Routing TCP/IP 人民邮电出版社
TCP/IP详解卷一、卷二、卷三
ISO国际标准化组织 1979年建议用于OSI(开放式系统互联体系结构)。各个系统厂商不兼容。遵循OSI标准,生产软件或硬件遵循标准OSI,可以兼容,实现不同厂商设备的兼容。定义了连接异种计算机的标准框架。
一、OSI分层模型
1. 应用层
提供用户接口。例如:Telnet,SMTP,HTTP,FTP。
2. 表示层
数据表示,加密等特殊处理过程,ASCII,MPG,JPEG
3. 会话层
保证不同应用间的数据区分,OS,SQL,RPC.定义了如何开始、控制可结束一个会话,包括对多个双向会话的控制和管理。
----------以上为高层message,以下为底层(数据流层CCNA/CCNP/CCIE)
可靠或不可靠的数据传输,数据重传前的错误纠正。TCP/UDP/SPX
通过端口号找到对应的应用程序
UDP协议号17
决定路径的逻辑寻址。IP、IPX,
为网络设备提供逻辑地址,IP地址对应的网络叫做因特网,依照IP地址对路径进行寻路,最优最快的路径。
辅助数据从源端发送到目的端
负责数据传输的寻径和转发
路由器(三次设备)识别IP地址,一个个节点识别最优路径
负责成帧,控制对介质的访问,错误发现但不能纠正。802.3/802.2/HDLC/PPP/Frame-Relay
网卡(网卡号MAC地址,以太网地址,网络设备,数据可以往外传输,代表设备号唯一性, 硬件地址),接口连接网卡
决定数据通讯的机制,差错检测
提供对网络层的服务
合成传输的帧数据
交换机(网桥),不识别IP地址,通过MAC地址转发,网卡,
MAC地址 48位二进制数组成 通常表示为12个16进制的数
前24位是标准组织IEEE制定的,后24位是厂商自己制定的节点标识符
设备间接受或发生比特流,说明电压、线速和线缆等。EIA/TIA-232,V.35,RJ45,有关传输介质的特性标准
层:layer,描述了所有需要的有效的通讯过程,并把这些过程逻辑上的组叫做层
部署网线,数字信号,即:bit流 ,集线器、转换器(转换器其中之一,电话线,调制解调器,数字信号转换成模拟信号信号)、中继器(信号之间相互交通)、屏蔽/非屏蔽双绞线、光纤、无线
二、基本概念
1. PDU
协议数据单元。每一次使用自己层的协议和别的系统的对应层互相通信,协议成的协议在对等层之间交换的信息叫协议数据单元。
2. 封装与解封装
封装(encapsulate/encapsulation):数据通过网络进行传输,要从高层一层一层的向下传送,如果一个主机要传送数据到别的主机,先把数据撞到一个特殊的报头中,这个过程叫做封装。
封装分为:切片和加控制信息
解封装:上述的逆向过程。
封装过程:
上层数据
TCP头-上层数据(segment) 通过端口号查看对应上层应用
IP头-TCP+切片的上层数据(packet)
LLC头-IP+TCP+切片的上层数据-FCS(Frame) 逻辑链路控制头 帧校验序列
MAC头-LLC头+IP+TCP+切片的上层数据-FCS(bit) 介质访问控制头 帧校验序列
0101110101001000010 一个字节八个比特 在 物理层传输
端到端数据传输过程
端系统A 七层-中间系统(网络层、数据链路层、物理层)-端系统B 七层
每经过一个网络层,数据链路层都需要重新封装
分层的好处:
Frame Packet Segment Data 帧 包 段
IP UDP Payload
Head Head Head Data
OSI分层模型缺陷:
三、TCP/IP 事实上的标准
1. 应用层(应用层、表示层、会话层)
文件传输TFTP/FTP, Email SMTP,远程登录 Telnet,rlogin,网络管理SNMP,名称管理DNS,网络测速ping,tracert
2. 主机到主机层(传输层)
TCP 传输控制协议
UDP 用户数据包协议,不可靠非面向连接的
3. 互联网层 Internet(网络层)
IP互联网协议
ICMP互联网控制信息协议
ARP地址解析协议
RARP逆向地址解析协议
1)16位源端口号 16位目的端口号 (指定应用程序)
2)32位序列号(确认被封装的数据所在的位置)
3)32位确认序号(确定源节点下一次需要从目标接受的序列号,接收方发的,)
4)4位首部长度(TCP头部长度)+保留6位(0)+六位标记比特(URG/ACK/PSH/RST/SYN/FIN)+16位窗口大小(流量控制)
URG-1 紧急指针
ACK-1接收端查看32位确认号
SYN-1连接请求数据
FIN-1整个传输最后一个数据
5)16位校验和(检测这个TCP数据段是否有错误)+16位紧急指针
6)可选项
WEB浏览器,电子邮件、文件传输程序
6 端口号
一般指网络总面向连接服务和无连接服务的通信协议端口,是一种抽象的软件结构,包括一些数据结构和I/O缓冲区
例如:
HTTP-80,FTP-21,Telnet-23,SMTP-25,----TCP
DNS-53-,TFTP-69,SNMP-161,RIP-520---UDP
四、TCP的三次握手 面向连接的
1.发送
1)发送SYS(seq=A序列号, ctl=SYN 置1)
2)接收SYN, 并发送SYN ACK(seq=B,ACK=A+1序列号加一, ctl=SYN,ack)
3) 建立会话(seq=A+1 ack=B+1序列号加1, ctl=ack)
TCP建立连接
2. TCP确认机制 可靠的
发送1
接受1 发送ACK2
接受ACK2, 发送2
接受2 发送ACK3
接受ACK3 发送3
接受3 发送ACK4
接受ACK4
Source Dest Seq Ack
1028 23 10 1
23 1028 1 11(Source Dest Seq Ack)
1028 23 11 2
3. TCP窗口机制(cont) 支持流控,流量可控
窗口大小16位
Window Size =3
Send 1
Window size=3
Send 2
Window size=3
Send 3 Ack 3
Window size=2 数据3被丢弃
Window size=3
Send 3(TCP重传)
Window size=3
Send=4 Ack 5
Window size =2
五、UDP数据格式
1)16位源端口号+16位目的端口号
2)16位UDP长度+16位UDP校验和
3)数据
语音IP电话、视频的传输使用即时通讯使用UDP封装,不需要重传
六、IP地址
1.IP数据格式
1)4位版本(Ipv4 0100 /IPv6 0110)+4位首部(标识IP头大小)+8位服务类型(TOS,指定特殊数据包处理方式,优先级,区分服务代码表,IP、语音等级高优先发送)+16位总长度(字节数)()标识IP包大小)
2)16位标识()+3位标志()+13位片偏移(),
二层数据链路层最大传输单元Frame,超过最大传输单元,对数据包分段为更小的数据包,路由器在每一片数据包相同字段打上相同的标识
如果第二位置1,表示路由器不能对数据包进行分段处理,将丢去数据并向源端发送错误消息
偏移用于指明分片起始点位置
3)8位生存时间(TTL)+8位协议+16位首部校验和(IP头校验)
255,整个数据包每经过一台路由器TTL-1,减为0,则丢弃数据包。防止环路
协议:指明使用哪一个协议ICMP-1, IP-4,TCP-6,UDP-17
4)32位源IP地址
5)32位目的IP地址
6)选项
7)数据
2.IP地址结构
32bit的二进制数 三个点分成四个小节 点分十进制 每个小节8个比特
128 192 224 240 248 252 254 255
Network Host
255 255 255 255 十进制最大
1-8 9-16 17-24 25-32
1111111111111111 1111111111111111 二进制最大
172 16 122 204 十进制举例
10101100 00010000 01111010 11001100二进制举例
Class A Network host host host
第一个八位组以0开头 0NNNNNNN (1-126)
1.0.0.1~126.255.255.255.254
1.0.0.0网络地址 126.255.255.255广播地址 可用地址-2
Class B Network Network host host
第一个八位位组必须以10开头 10NNNNNN 128-191
Class C Network Network Network host
第一个八位位组以110开头 110NNNNN (192-223)
前三个八位位组为网络位
Class D 多播/组播地址 1110MMM Multicast Group Multicast Group Multicast Group
第一个八位位组以1110开头 (224-239)
Class E 保留做科研用(240-255)
3. 特殊IP地址
1)127.0.0.1 本地回环测速地址loopback 本机TCPIP正常
2)全网广播地址:255.255.255.255
3)IP地址0.0.0.0代表网段 任何网络
4)主机位全位0,代表网段
5)广播地址:主机位部分全为1,用于广播
4. 私有地址
不允许出现在公网,如果发出数据包IP包含私有地址,涉及NAT地址转换,会被路由设备丢掉
A类地址:10.0.0.0到10.255.255.255
B类地址:172.16.0.0到172.31.255.255.255
C类地址:192.168.0.0到192.168.255.255
子网掩码不能单独存在,必须结合IP地址一起使用,
作用:标识出IP地址哪部分代表网络?哪部分代表主机。将一个IP地址规划成2部分
网络:局域网同一个网络的IP地址
主机:指定主机
A: 255.0.0.0/8—掩码中有8个1。0所涵盖的部分叫做主机位,1所涵盖的部分叫做网络位
2^24-2=16777214个地址
B:255.255.0.0/16
2^16-2=65534个地址
C:255.255.255.0/24
2^8-2=254个地址
计算机可用的主机地址
172.16.0.0
00000000 00000000 1代表网络
11111111 11111111 65536代表网络广播地址
可用的主机地址 2的N(主机位数)次方-2=65534
ARP广播进行请求 单播回复,映射存入本地ARP表中
Ethernet:0800…
Arp -a
MAC(Media Acccess Control 介质访问控制),MAC地址是烧录在网卡NIC里的
由48位比特长,16进制数字组成
0-23位代表厂商
24-47是由厂商分配给自己生存的网卡,叫做组织唯一标志符,是失败LAN节点的标识
在网络底层传输,是MAC地址识别主机的,一般全球唯一。
8 RARP
TCP/IP中的子协议,互联网控制信息协议,网络、主机、路由 ping tracert