计算机网络 - 传输层

   日期:2020-05-11     浏览:105    评论:0    
核心提示:文章目录传输层导学TCP和UDP比较传输层的寻址 - 端口号端口号分类常见端口号套接字socket = (主机IP地址,端口号)传输层只有主机才会有传输层主机(五层) - 传输设备(三层) - 主机(五层)传输层功能:进程与进程之间的通信网络层功能:主机与主机之间的通信复用:不同进程可以共用一个传输层传输到网络层分用:剥去报文之后(从网络层收到数据后),能够送交给正确的进程 QQ给女朋友发的消息,微信上是收不到的网络层首部校验和 :只检查了头部传输层 对数据部分进行校验(差错j检测网络

文章目录

    • 传输层
      • 导学
        • TCP和UDP比较
        • 传输层的寻址 - 端口号
          • 端口号分类
          • 常见端口号
          • 套接字socket = (主机IP地址,端口号)
      • UDP
        • UDP首部格式
        • UDP检验和
          • 发送端校验
          • 接收端校验
      • TCP
        • TCP 报文段首部格式 ⭐
          • **序号字段:该报文中的第一个字节**
          • **确认号:期待对方发送的第一个字节**
          • **数据偏移:正好是首部长度**
          • 窗口
          • 检验和
          • 紧急指针
          • 选项(长度可变的字段)
          • 控制位
            • URG 紧急位
            • ACK 确认位
            • PUSH 推送位
            • RST 复位
            • SYN 同步位
            • FIN 终止位

传输层

只有主机才会有传输层
主机(五层) - 传输设备(三层) - 主机(五层)

传输层功能:进程与进程之间的通信
网络层功能:主机与主机之间的通信

复用:不同进程可以共用一个传输层传输到网络层
分用:剥去报文之后(从网络层收到数据后),能够送交给正确的进程
 QQ给女朋友发的消息,微信上是收不到的

网络层首部校验和 :只检查了头部
传输层 对数据部分进行校验(差错j检测)

导学

TCP和UDP比较

TCP:
传数据之前需要建立连接,传送结束后释放连接
不提供广播和多播
UDP:
只管发不管你收不收得到

传输层的寻址 - 端口号

端口号分类

常见端口号

套接字socket = (主机IP地址,端口号)

UDP

在IP数据报基础上,增加了复用分用和差错检测
UDP面向报文:不切分,给多少就是多少,完整的
所以要选择合适的报文.尽量不要后续在网络层分片
无拥塞控制:不会从源头上限制发送报文的速度
 拥塞会适量的丢包,但影响不大

UDP首部格式

UDP检验和

当校验的时候,会给数据添上伪首部

发送端校验

接收端校验

TCP

可以实现全双工通信
发送缓存: 存储了未发送的数据 和 已经发送但是还未确认达到的数据
接收缓存:存储了到达了未被读取的数据 和 没有按序到达的数据

流: 字节序列 ,流入进程或流出进程

TCP 报文段首部格式 ⭐

填充字段的作用: 用来凑数的 ,保证首部是4字节整数倍

序号字段:该报文中的第一个字节

 1 |1 2 3 , 4 | 4 5 6

确认号:期待对方发送的第一个字节


 已发送123 接下来发送456, 4就是确认号
数据偏移:数据起始处,距离TCP报文的起始处的 距离

数据偏移:正好是首部长度

首部长度 = 固定长度20字节 + 选项 +填充

窗口

对于接收端而言,所能容纳的最大的数据量
A给B发文件,B得告诉A,自己的窗口是多少,A就知道如何设置发送缓存了

例: 若确认号701 ,窗口为1000 ,所以从701开始发送数据 ,接收缓存空间就是 701~1700

检验和

传输层 检验首位 + 数据部分

紧急指针

指明了紧急数据的末尾 在 报文段中的位置
紧急指针为70 则0~70就是紧急数据

选项(长度可变的字段)

最大报文段长度MSS等

控制位

URG 紧急位

对于发送方而言
URG = 1 ,有高优先级的数据来了, 结合紧急指针使用
不在缓存中排队了,赶紧发送出去

ACK 确认位

ACK = 0 ,确认号无意义
所以建立连接成功后ACK为1

PUSH 推送位

对接收端而言 , 尽快交付PUSH=1的应用进程 , 不用等缓存填满了再向上交付

RST 复位

TCP出现严重差错,释放当前连接并且重新建立连接

SYN 同步位

SYN=1 ,表示 这是一个请求建立连接的报文

FIN 终止位

FIN = 1.报文段发送方数据发送完毕, 释放连接

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服