计算机网络 | 传输层

计算机网络 | 传输层

参考视频:王道计算机考研 计算机网络

参考书:《2022年计算机网络考研复习指导》

计算机网络 | 传输层

功能概述

传输层是主机才有的层次。

复用:发送方的不同应用进程都可以使用同一个传输层协议传送数据。

分用:接收方的传输层在去掉报文的首部后能把数据正确交付到目的应用进程。

注:网络层也有复用和分用功能。但网络层的复用指发送方不同协议的数据都可以封装成IP数据报发送出去,分用指接收方的网络层在去掉报文的首部后能把数据正确交付给相应的协议。

端口:

常用的熟知端口号:

应用程序 熟知端口号
FTP 21
TELNET 23
SMTP 25
DNS 53
TFTP 69
HTTP 80
SNMP 161

套接字:一个通信端点,在网络中采用发送方和接收方的套接字来识别端点。

套接字 Socket = (IP地址:端口号),它唯一地标识网络中的一台主机和其上的一个应用(进程)。

无连接服务和面向连接服务:

UDP协议

概述:

UDP不保证可靠交付,所有维护可靠性的工作在应用层完成。

UDP是面向报文的。报文不可分割,是UDP数据报处理的最小单位。报文过大或过小都会降低网络层的效率。

UDP首部占8B,首部格式:

当传输层从网络层收到UDP数据报时,就根据首部的目的端口把UDP数据报通过相应端口上交给应用进程。

如果接收方UDP发现接收报文的目的端口号错误,丢弃该报文,并发送ICMP"端口不可达"差错报文给发送方。

UDP的校验位构成:

这里的伪首部只是用来计算检验和的,计算完了就丢弃。

UDP校验方式:

在发送端的时候:

  1. 校验和字段全设为0,添加伪首部。
  2. 将每一行(4字节)拆成两部分,左右平均2字节大小,将这两字节数据写成二进制,那么2字节一共就需要2*8=16位。同时如果数据字段不整齐,则用0补齐,这样就可以写出几十行二进制数,如上图中所示。
  3. 计算着几十行二进制数按二进制反码运算求和,二进制反码运算可以参考二进制反码求和运算,得到的最后结构再反码,之后将反码之后的放入原来的检验和字段。

在接收端的时候:

  1. 与发送端的时候不同的是,此时检验和字段不是0了。
  2. 按照发送端的步骤再将所有数据写成二进制进行二进制反码运算求和。
  3. 如果最后得到结果全1就是没问题,否则丢弃。

注意:

  1. 校验时,若UDP数据报的长度不是偶数个字节,则需填入一个全0字节,但此字节和伪首部一样,是不发送的。
  2. 若UDP校验和校验出UDP数据报是错误的,那么可以丢弃,也可以附上错误报告交付给上层。
  3. 通过伪首部,不仅可以检查源端口号、目的端口号和UDP数据报的数据部分。还可以检查IP数据报的源IP地址和目的地址。
相关推荐
洁洁!3 小时前
【计算机网络】数据链路层深度解析
网络·网络协议·计算机网络
Benaso14 小时前
计算机网络通关学习(一)
学习·计算机网络
又是费尽心思不重名的程序猿16 小时前
计算机网络
计算机网络
我命由我1234516 小时前
MAC 地址简化概念(有线 MAC 地址、无线 MAC 地址、MAC 地址的随机化)
android·学习·计算机网络·安卓·学习方法
Harper. Lee20 小时前
【计网】数据链路层:概述之位置|地位|链路|数据链路|帧
网络·笔记·学习·计算机网络·智能路由器
无敌岩雀1 天前
【计算机网络】TCP 协议——详解三次握手与四次挥手
网络·网络协议·tcp/ip·计算机网络
洁洁!1 天前
深入分析计算机网络性能指标
网络·计算机网络·性能优化
邂逅岁月2 天前
【网络原理】❤️Tcp 连接管理机制❤️ “三次握手” “四次挥手”的深度理解, 面试最热门的话题,没有之一, 保姆式教学 !!!
网络·tcp/ip·计算机网络·面试·tcp·网络连接·tcp机制
Aoharu2 天前
【计算机网络】IP, 以太网, ARP, DNS
网络协议·tcp/ip·计算机网络
Aoharu2 天前
【计算机网络】初识网络
网络·计算机网络·智能路由器