[计算机网络笔记]第三部分——传输层之UDP

来源:互联网 发布:希区柯克 为什么 知乎 编辑:程序博客网 时间:2024/06/06 01:41

第三部分——传输层层协议

一些概念:

      传输层为运行在不同主机上的进程停工逻辑通信服务

      多路复用:接收源主机不同套接字中的数据块,为每一个块封装首部信息并向下层发送

      多路分解:将传输层报文中的数据交付给正确的套接字(可能是不同的套接字)

      TCP/UDP的基本任务:将两个端系统间IP的交付任务拓展为运行在运行两个系端系统的进程之间的交付任务(利用传输层的多路复用和多路分解)

 

      TCP/UDP多路分解的区别:UDP套接字使用(目标IP、目标端口)的二元组标识一对套接字连接,两个不同IP或端口发到同一个IP、端口的UDP报文会交付给一个UDP套接字;而TCP套接字使用(目标IP、目标端口、源IP、源端口)的四元组标识一对TCP套接字连接,因此不同IP或端口发送到同一个IP、端口的TCP报文会交付给不同的TCP套接字

 

 

      UDP只提供最低限度的运输层服务:进程间数据交付、差错检测

      TCP除了UDP提供的基本服务之外,还提供:可靠数据传输、拥塞控制

 

运输层协议概述:(后面详细说)

      TCP(传输控制协议):

        面向连接服务:

  1. 全双工通信,允许同时收发报文
  2. 因为面向连接,所以需要三次握手,四次挥手
  3. 用完关闭

        可靠数据传输服务:无差错、按序发送接收报文,没有丢失和冗余

        拥塞控制:当网络拥堵时,可以抑制发送速率,限制TCP连接,这一功能对并不是传输层的核心功能,对传输层本身并没有好处,甚至这对于带宽敏感的应用会带来损害,但这对通信网络有好处。

      UDP(用户数据协议):轻量级的协议,只提供满足传输层要求的最小服务。

        无连接的协议,因此不需要握手

        不是可靠传输,数据可能丢失或者乱序到达

        没有拥塞控制机制,可以以任意速率发送报文,但是多数防火墙会限制UDP的流量

 

SSL(安全性套接字):对TCP做了安全性的增强,包括加密、数据完整性以及端点鉴别(TCP和UDP本身没有加密机制)

RTT(往返时间):数据从一端传到另一端再传回来的时间,可以看作是TCP三次握手的前两次耗时

 

UDP协议:

      特点:应用层能更好地孔子要发送数据和发送时间、无需建立连接、无连接状态(各种连接控制问题)、分组首部开销小

      报文结构:

源端口号

目标端口号

长度(单位:字节)

互联网校验和

应用层数据

  

每个单元格代表2个字节,黄色部分代表UDP报文首部,首部长度8个字节,灰色部分代表UDP真实数据部分。

UDP报文中只有端口号,IP地址在下一层(网络层)报文中封装进来

      报文各部分意义:

        长度:指UDP报文总长度,包括首部+数据部分

        互联网校验和:用于差错检验

      互联网校验和的计算方法:将UDP整个报文(不包含校验和)转化成二进制比特,每16个比特相加,如果进位成为17位,则将最高位加回末尾(回卷),将所有数据加完的结果保存为校验和。

      互联网校验和的使用:接收方接收UDP整个报文(包含校验和)转化二进制比特,妹16位相加,进位产生17位的话就回卷,最后结果如果是16位1,则表示数据正确,如果有不是1的位,则表示报文参数过程中出现错误。

 

0 0
原创粉丝点击