计算机网络笔记

这篇具有很好参考价值的文章主要介绍了计算机网络笔记。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

TCP有连接可靠服务

TCP特点
1.TCP是面向连接的传输层协议;
2.每条TCP连接只能有两个端点,每条TCP连接是一对一的;
3.TCP提供可靠交付,保证传送数据无差错,不丢失,不重复且有序;
4.TCP提供全双工信道,允许通信双方同时发送数据。TCP两端都设有发送缓存和接收缓存,用来临时存放双向通信的数据;
发送缓存存放的数据:1.发送应用程序传给发送方TCP准备发送的数据。2.TCP已发送但未收到确认的数据。
接收缓存存放的数据:1.按序到达但尚未被接受应用程序读取的数据。2.不按序到达的数据。
5.TCP是面向字节流的,虽然应用程序和TCP的交互是一次一个数据块(大小不等),但TCP把应用程序交下来的数据仅视为一串无结构的字节流。(这会导致粘包问题)UDP报文长度由发送应用进程决定,TCP报文的长度需要根据接收方给出的窗口值和网络拥塞程度来决定。如果进程传送到TCP缓存的数据块太长,TCP会把它划分得短一些传送,如果太短则积足够多得字节再组成报文段发出去。
TCP连接的端口为套接字,由IP和端口号组成,套接字唯一的标识网络中的一台主机和其上的一个应用(进程)。每条TCP连接唯一的被通信的两个端口确定。

三次握手
1.客户机向服务器发送请求连接报文段,报文段中同步位SYN置1,同时包含一个初始序号seq=x,客户端进入同步已发送(SYN-SENT)状态。
2.服务器收到客户端的请求连接报文,回复一个确认报文。报文中确认位ACK、同步位SYN都置1,并包含一个初始序号seq=y和确认号ack=x+1,服务器进入同步收到(SYN-RCVD)状态。
3.客户端收到服务器的确认之后再向服务器发送一个确认报文,报文中确认位ACK置1,序号为seq=x+1,确认号ack=y+1,客户进程进入已建立连接(ESTABLISHED)状态。

四次挥手
1.客户机发送释放链接报文段,并停止发送数据,主动关闭TCP连接。报文段中终止位FIN置1,序号seq=u为上一个发送序号+1,客户机进入终止等待1(FIN-WAIT_1)状态。
2.服务器收到报文段后回复一个确认报文段。报文段中确认位ACK置1,确认号ack=u+1,序号seq=v为前一个序号加一,服务器进入关闭等待状态(CLOSE-WAIT)。
3.当服务器没有要向客户机发送的数据时,通知TCP释放链接。发送释放连接报文段。报文段中终止位FIN确认位ACK都置1,确认号ack=u+1,序号seq=w(可能在这之前服务器还发送过一些数据),服务器进入最后确认状态(LAST-ACK)。
4.客户机收到报文,回复一个确认报文段。报文段中确认位ACK置1,确认号ack=w+1,序号seq=u+1。客户机等待2MSL(最长报文段寿命)后进入连接关闭状态(CLOSED)。

UDP无连接非可靠服务

UDP特点
1.无需建立连接,没有建立连接时延;
2.无连接状态,因为是无连接,因此不必维护连接状态(接收缓存发送缓存拥塞控制和确认之类的);
3.分组首部开销更小(UDP首部只有8B,而TCP有20B);
4.应用层能更好的控制发送的数据和发送时间。(没有拥塞控制不会受网络拥塞影响);
5.UDP支持一对一,一对多,多对多的交互通信,而TCP只支持一对一通信;

UDP常用于一次性传送较少数据的网络应用,如DNS,SNMP,也常用于多媒体应用,如IP电话,视屏会议,流媒体等。因为时延小。
UDP不保证可靠交互,但可由用户在应用层来完成可靠交互(可以在应用层实现类似TCP可靠交互的机制(确认,重传,数据有序))
UDP是面向报文,UDP对应用层交下来的报文既不合并,也不拆分,而是保留报文的边界,一次交付一个完整的报文(报文在UDP中是不可分割的,报文是UDP数据报处理的最小单位)。(但UDP交付给IP层(网络层)后可能会被分片)文章来源地址https://www.toymoban.com/news/detail-652134.html

到了这里,关于计算机网络笔记的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 计算机网络面试八股文

    计算机网络体系大致分为三种,OSI七层模型、TCP/IP四层模型和五层模型。一般面试的时候考察比较多的是五层模型。最全面的Java面试网站:最全面的Java面试网站 五层模型 :应用层、传输层、网络层、数据链路层、物理层。 应用层 :为应用程序提供交互服务。在互联网中的

    2024年02月06日
    浏览(54)
  • 前端面试常考 HTTP/计算机网络面试题

    HTTP协议是基于TCP/IP通信协议来传输数据,如HTML文件,图像等,即是一个客户端和服务端进行请求和响应的协议 无连接,限制每次连接只处理一个请求,服务端完成客户端请求就断开连接 无状态,没有记忆能力,每次请求都是独立的,不记录客户端的任何行为。优点是解放服

    2024年02月21日
    浏览(44)
  • 计算机网络方面的面试题目(合集)

        python面试题   1、python下多线程的限制以及多进程中传递参数的方式   python多线程有个全局解释器锁(global interpreter   lock),这个锁的意思是任一时间只能有一个线程使用解释器,跟单cpu跑多个程序一个意思,大家都是轮着用的,这叫“并发”,不是“并行”。   多进

    2024年02月08日
    浏览(35)
  • 计算机网络高频面试八股文

    计算机网络体系大致分为三种,OSI七层模型、TCP/IP四层模型和五层模型。一般面试的时候考察比较多的是五层模型。最全面的Java面试网站 五层模型 :应用层、传输层、网络层、数据链路层、物理层。 应用层 :为应用程序提供交互服务。在互联网中的应用层协议很多,如域

    2023年04月19日
    浏览(57)
  • 计算机网络、浏览器面试题

    1、根据输入的网址解析域名到对应的ip地址,查找顺序: 浏览器缓存、操作系统缓存、路由器缓存、DNS 服务器(记录这域名和ip地址的映射)、根服务器。 2、找到ip地址需要先建立TCP链接 客户端发送 SYN数据包表示请求连接,服务端响应SYN 和 ACK 表示问答,客户端收到后回应

    2024年01月19日
    浏览(47)
  • 计算机网络 基础面试第二弹

    TCP三次握手的过程如下: 第一步(SYN):客户端向服务器发送一个带有SYN(同步)标志的TCP包,指示客户端希望建立连接。这个包包含一个随机的初始序列号(ISN)。 第二步(SYN-ACK):服务器收到客户端的SYN包后,会发送一个带有SYN和ACK(确认)标志的TCP包作为回应。服务

    2024年02月08日
    浏览(53)
  • 计算机网络 基础面试第一弹

    DNS解析(Domain Name System Resolution)是将域名转换为IP地址的过程。 以下是DNS解析的详细过程: 发起解析请求:当您在浏览器中输入一个域名时,您的操作系统会发起一个DNS解析请求。该请求被发送到您计算机上配置的本地DNS服务器,通常由您的互联网服务提供商(ISP)提供。

    2024年02月08日
    浏览(48)
  • 2023年前端面试汇总-计算机网络

    Post 和 Get 是 HTTP 请求的两种方法,其区别如下: 1. 应用场景 GET 请求是一个幂等的请求,一般 Get 请求用于对服务器资源不会产生影响的场景,比如说请求一个网页的资源。而 Post 不是一个幂等的请求,一般用于对服务器资源会产生影响的情景,比如注册用户这一类的操作。

    2024年02月10日
    浏览(49)
  • 计算机网络 基础面试第三弹

    短连接: 短连接是指每次客户端请求与服务器响应完成后,连接就会关闭。也就是说,每次请求都需要重新建立连接,完成一次请求后立即关闭连接。这意味着每个HTTP请求都需要经历连接建立、数据传输和连接关闭的过程。 短连接的特点包括: 每个请求都需要建立和关闭连

    2024年02月08日
    浏览(49)
  • 计算机网络-笔记-第一章-计算机网络概述

    一、第一章——计算机网络概述 二、第二章——物理层 三、第三章——数据链路层 四、第四章——网络层 五、第五章——运输层 六、第六章——应用层 目录 一、第一章——计算机网络概述 1、因特网概述 (1)网络、互联网、因特网 (2)因特网发展的三个阶段 (3)因特

    2024年02月11日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包