传输层

1、传输层:

传输层为运行在不同应用上的进程提供了一种逻辑通信机制

发送方:将应用递交的消息分成一个或多个的Segment,并向下传给网络层

接收方:将收到的segment组装成消息,并向上交给应用层

传输层协议:UDP/TCP

传输层和网络层区别:

网络层:提供主机之间的逻辑的逻辑通信机制,传输层提供的是应用进程之间,且依赖网络层、依赖网路层服务、对网络层服务进行(可能的)增强。

1、1、基本理论:

可靠数据传输原理:

 

多路复用(发送端)与多路分用(接收端)

接收端多路分用:传输层依据头部信息将收到Segment交给正确的Socket,即不同的进程

发送端多路复用:从多个socket接收数据,为每一块数据封装上头部信息,生成Segment,交给网络层。

分用工作机制:主机接收到的IP数据报:

每个数据报携带源IP地址和目的IP地址;每个数据报携带一个一个传输层的段Segment;每个携带源端口号和目的端口号

主机接收到Segment之后,传输层协议提取IP地址和端口号信息,将Segment导入相应的Socket

无连接分用:UDP的Socket用二元组标识(目的IP地址、目的的端口号)

主机接收到UDP段后:检查段中的目的端口号,将UDP段导向绑定在该端口号的Socket

来自不同源的IP地址和/或源端口号的IP数据报将被导向同一个Socket

面向连接的多路分用:源IP地址、源端口号、目的IP地址、目的端口号

接收端利用所有的四个值将Segment导向合适的Socket,服务器能勇士支持多个TCPSocket,为每个Socket表示自己的四元组。

 

2、internet传输层协议

tcp协议:可靠、按序的交付服务==>拥塞控制、流量控制、连接建立

UDP协议:不可靠的交付服务 ====>基于“尽力而为”的网络层,没有做(可靠性方面)的扩展

均不提供:延迟和带宽保障

2.1UDP协议

复用/分用、简单的错误校验

为什么要在传输层做错误检测(端到端的逻辑通信)可能会经过多路由器和不同链路的介质,我们不能保证所有的路由器和链路都有错误检验机制

Best effort 服务,UDP段可能会丢失或者非按序到达。 UDP发送方和接收方不需要握手,每个UDP报文段的处理独立于其他段

UDP存在的价值:无须建立连接(减少延迟);实现简单,无须维护连接状态;头部开销少(8字节);没有拥塞控制;应用可更好地控制发送时间和速率

常用于流媒体,DNS,SNMP

在UDP上实现可靠数据传输:在应用层增加可靠性机制、应用特定的错误回复机制

UDP校验和(checksum):目的:检测UDP端=段在传输中是否发生错误(如为位翻转)

#发送方:将段的内容视为16-bit整数;校验和计算:计算所有整数的和,进位加在和的后面,将得到的值安位求反,得到校验和;发送将检验和放入校验和字段

接收方:计算所受到段的校验和;将其与校验和字段进行对比:不相等:检测出错误;相等:没有检测出错误(仍然可能有错误)

 

校验和计算:注意:最高位进位必须被加进去

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值