tcp/ip协议栈
*全球公认的事实上的国际标准
*整个Internet的基础
tcp/ip的层次模型

OSI的数据链路层分为LLC和MAC
TCP/IP的网络接口层为EII
传输层
Transmission Control Protocol(TCP) 面向连接
User Datagram Protocol(UDP) 非面向连接
TCP数据格式
|
Source port(16)//源端口 |
Destination port(16)//目标端口 |
|
Sequence number(32)序列号 | |
|
Acknowledgement number(32)确认号 | |
|
Header length(4) |
Reserved(6) |
Code bits(6) |
Windows(16)//窗口 |
|
Checksum(16) |
Urgent(16) | ||
|
Options(0 or 32 if any)//校验盒 | |||
|
Data(varies) | |||
UDP数据格式
|
Source port(16)//源端口 |
Destination port(16)//目标端口 |
|
Length(16)//长度 |
Checksum(16)//校验 |
|
Data(if any) | |
*没有序列号和确认号
*windows是流量控制窗口
端口号
UDP
520:RIP
161:SNMP
69:TFTP
53:DNS(内网和公网)
TCP
25:SMTP
23:TELNET
21:FTP
TCP的特点
*三次握手----------------------建立可靠连接
*.确认机制---------------------应答接收
*.端口号------------------------多路复用
*.序列号-------------------------丢失检测、乱序重排
*.完整性校验-------------------差错检测
*.窗口机制------------------------流量控制
TCP与UDP的对比
|
功能项 |
TCP |
UDP |
|
连接服务的类型 |
面向连接 |
无连接 |
|
维护连接的状态 |
维持端到端的连接状态 |
不维护 |
|
对应用层数据的封装 |
对应用层数据分段和封装,用端口号标识应用层程序 |
与tcp一致 |
|
数据传输 |
通过序列号和应答机制确保 |
不确保可靠传输 |
|
流量控制 |
使用浮动窗口控制流量 |
无流量控制机制 |
网络层协议
Internet Protocol---(IP)
Internet Control Message Protocol---(ICMP)
Address Resolution Protocol---(ARP)
Reverse Assress Resolution Protocol---(RARP)
IP报文格式
版本、头长度、 优先级类型(QOS)、总长度、id、标志位、现迁移量、Time to live(8)、协议号、头校验盒、源IP地址、目标IP地址
*数据MTU(默认情况=1500,在链路层表示)
*路由协议
1.建立路由表2.防环
|
Version(4)//版本 |
Header Length(4)//头长度 |
Priority&Type of Service(8)优先级类型QOS |
Total Length(16) 总长度 | ||
|
Identification(16) Id |
Flags(3) 标志位 |
Fragment offser(13) 现迁移量 | |||
|
Time to live(8) |
Protocol(8) 协议号 |
Header checksum(16) 头校验盒 | |||
|
Source IP Address(32) 源IP地址 | |||||
|
Destination IP Address(32) 目标IP地址 | |||||
|
Data(varies if any) 数据 | |||||
IP的主要作用
1.标识节点和链路
(用唯一的IP地址标识每一个节点,用唯一的IP网络号标识每一个链路)
2.寻址和转发
(-确定节点所在的网络位置,进而确定节点所在的位置-IP路由器选择适当的路径将IP包转发到目的的节点)
3.适应各种数据链路
(-根据链路的MTU对IP包进行分片和重组-为了通过实际的数据链路传递信息,需建立IP地址到数据链路层的映射)
ARP
作用:建立IP和mac映射方式:广播请求和单播回应 属于3层协议,作用于3层于两层之间
(同一网段直接广播不同网段需要网关)
ICMP
(范围的收听机制:ping(180或255))路由跟踪(30)
*ping命令发送ICMP的echo包,通过回送的echo relay进行网络测试。
*ICMP的消息分为ICMP查询消息和ICMP差错消息。
*ICMP可用于报告IP数据包传递过程中发生的错误、失败等信息,提供网络诊断功能
echo relay------------目标回应
Destination unreachable----目标不可达
Request timed out----------访问超时
文章详细介绍了TCP/IP协议栈的结构和主要组成部分,包括TCP和UDP的特性、端口号的使用、IP协议的功能以及ARP和ICMP的作用。TCP提供了面向连接、确认机制、流量控制等可靠性保证,而UDP则更注重效率,不保证数据传输的可靠性。此外,IP协议负责节点和链路的标识及数据转发,ARP用于建立IP和MAC地址映射,ICMP则用于网络诊断和错误报告。

5494

被折叠的 条评论
为什么被折叠?



