一、传输层基础介绍
传输层主要包括两种协议
传输层端口号
二、UDP通信
UDP协议介绍
UDP 通信特点:
UDP Segment结构
UDP通信过程
三、TCP通信
TCP通信特点:
TCP Segment结构
传输层的寻址方式:端口号
包括传输层的寻址方式,TCP/UDP 传输层协议工作流程,及TCP/UDP Packet 包结构以太网的物理层、数据链路层及网络层实现主机间的通信但实际情况在计算机网络进行通信的实体位于通信两端主机中的进程
那如何为运行在不同主机上的应用进程提供直接的通信服务?
这就需要传输层来负责
TCP协议
UDP协议
车载以太网OSI 七层模型,物理层、数据链路层、网络层、传输层;物理层属于硬件部分,因此通信完全依赖硬件;数据链路层是基于 MAC 地址寻址、网络层是基于P 地址寻址而接下来我们要介绍的传输层是基于端口号寻址。
在这里我们就会涉及到端口、路由器、交换机等不同端口之间的概念。
物理端口是指在不同硬件设备之间进行交互的接口,而传输层使用的是软件端口(软件端口是应用层的各类进程与传输实体进行层间交互的一种软件地址); 这些应用进程通过端口号进行标识,端口号长度为 16 位,可标识 65536 个不同端口号。
在进行传输层寻址时,端口号又可分为源端口号和目的端口号,其中对一条传输层报文来说,源端口号指发送方本地进程的端口号,目的端口号指访问对象进程的端口号,另外在TCP/UDP 通信时会涉及客户端/服务器端工作模式,一般我们称发起通信、请求服务的一方为client 客户端,接收请求、响应的一方为 Server 服务器端。
1、允许无连接通信
2、端口用于应用程序的寻址:
Source Port:发送方源端口
Destination Port:接收方目的端口
3、IP数据包:
IP协议字段:0x11
4、最大数据传输字节数
1472字节
UDP(User Datagram Protocol )是面向无连接的协议,节点间通信无需建立连接:且接收节点不需要对数据的接收进行确认,该通信方式类似于收音机功能,按下播放键就自动播放内容,而无需收听者的确认。
1、由于UDP不属于连接型协议,因此不保证数据可靠交付。
2、资源消耗小,处理速度快的优点,通常音视频数居使用 UDP 通信较多。
3、常用于IP电话、实时视频等视频会议功能中
因此即使偶尔丢失一两个数据包,也不会对接收结果产生太大的影响,另外,UDP工作模式可支持单播、多播及广播通信。
首先是UDP,UDP全称是用户数据报协议(User Datagram ProtocolD),UDP 报文封装在IPPacket包发送,其中IPPacket 包的IP Protocol Field位为(0x11)17时,该IP Packet包携带的是UDP数据,另外,一份 UDP Packet 包的最大长度是1472个字节。
SP:16位的 Source Pot 源端口号;对于SomelP-SD 报文来说固定为 30490
DP:16位的 Destination Port 目的端口号;对于SomelP-SD 报文来说固定为30490
Length:16位的 Length 表示UDP Packet 包长度,即包括UDP Header 在内的 UDP 数据包总长度;UDP 报文的最小长度为8字节,即不携带数据时的长度。
Checksum:校验范围包括 UDP的 Header 和 Data。
Data:数据段是UDP Packet 的有效负载部分。
情景一:ECUA与ECUB进行UDP通信,ECUA发送一条UDP报文给ECUB:其中,UDPPacket包存放ECUA进程的源端口号12652和ECUB的目的端口号32551ECUB接收该UDPPacket包并上传至对应端口号的应用进程
情景二:ECUB发送一条UDP Packet 包给到ECUA,ECUA接收该UDP报文
注意:UDP通信时接收节点在收到数据后,不会向发送节点回复确认响应
TCP 全称Transmission Control Protocol,传输控制协议;TCP 为应用程序提供一种点对点可靠的数据流传输服务,TCP包封装在IP Packet 中发送,对应IP Protocol值为6;另外,TCP支持分段(Segment)传输,TCP 报文段的最大长度1460个字节;当TCP传输数据过大时,则会在传输层进行数据分段。
1、TCP是面向连接、可靠传输的协议:
2、节点一对一通信,接收节点每接收一条报文就必须给与确认回复;
3、TCP通信包括3个步骤,分别是I建立连接、II数据传输、II释放连接;
4、该通信方式类似于使用电话的过程,需要输入电话号并拨通房后才能进行通话,TCP 用于Email、HTTP/FTP等应用相比于UDP支持多种工作模式,TCP 通信只支持单播通信
Source Port:16位的 Source Port(SP)源端口号
Destination Port:16位的 Destination Port(DP)目的端口号
Sequence Number:32 位的序列号SN(Sequence Number)
Acknowledgment Number: 32位的确认编号AN(Acknowledgment Number)Data Offset:4位的 Data Offset(DOFF)表示TCP Header 长度,不含数据的 TCP 标头长度
Reserved:6位的 Reserved(Res)保留位
URG:紧急指针标志,置1时有效,配合 Urgent Point紧急指针使用,用于指出本报文段的紧急数据的字节数,发送方将紧急数据插入本报文数据的最前面
ACK:Acknowledgement Flag;ACK 应答标志位置1时表示该为应答报文
PSH:Signals thatinformation has to be proceede fast as possible; PSH 标志值 1 表示携带 PUSH标志,指示接收方接收到该报文段后尽快交付给对应应用程序,而不不是在缓存区排队
RST:Reset Flag,Reset ofa connection RST; 重新连接标志位,用于重置由于主机崩溃或其他原因而出现错误的连接
SYN:SYN Flag,Connection establishment; SYN 用于建立连接过程发送的报文
FIN:Finish Flag,Connection release SYN;FIN 完成标志用于释放连接
WIN:Sliding window,Window 滑行窗口,用于告知对方本端 TCP 接收缓存区能容纳的字节数
Checksum:TCP Segment Checksum(CHK),TCP 段校验和
Option:Optionaladditionalinformation,可选字段必须为32 位的整数倍,不足时需填充至32位,可选字段最多包含40 个字节
Data:数据段是UDP Packet 的有效负载部分。