IEEE:美国电气和电子工程师协会(IEEE)是一个国际性的电子技术与信息科学工程师的协会,是世界上最大的专业技术组织之一(成员人数),拥有来自175个国家的36万会员(到2005年)。
TCP/IP协议栈是根据协议来分层;分层标准模糊;
网络的实际应用标准;网络实现的事实标准;
物理层:
X.25,TIA/EIA 568A/568B,...
数据链路层:
ppp,pppoE,HDLC,SLIP,Frame_Relay(FR),...
互联网层:
IP,IGMP(管理组播通信),ICMP,ARP(能够根据逻辑地址能够解析到MAC地址),RARP(能够根据MAC地址能够获取到逻辑地址)
传输层:
TCP,UDP,OSPF,EIGRP,...
应用层:
HTTP,HTTPS,FTP,DNS,DHCP,SMB(服务消息块),
互联网层:
IP的功能:
1.寻址和路由
2.数据分片和重组
3.无连接不可靠传输(无序传输)
IP寻址:
分层编址的地址:网络部分 + 主机部分
网络部分:描述主机所在的逻辑网络范围
主机部分:描述在特定的逻辑网络范围内的具体位置
IPv4地址:
32bits二进制构成的地址标识符号;4个8位组
为方便人读取,将其设置为点分十进制格式;
A.B.C.D
A:0~255
B:0~255
C:0~255
D:0~255
IPv4地址分类:
A类:最左侧的二进制数字是“0”,8个网络位,24个主机位;
00000000 - 011111111
0 - 127
0:
127:主机环回地址;
可以地址范围:
1.0.0.0-126.255.255.255
B类:最左侧的两位二进制数字是“10”,16个网络位,16个主机位;
10000000 00000000 - 10111111 11111111
128.0 - 191.255
可以地址范围:
128.0.0.0-191.255.255.255
C类:最左侧的三位二进制数字是“110”,24个网络位,8个主机位;
11000000 00000000 00000000 00000000 - 11011111 11111111 11111111 11111111
192.0.0 - 223.255.255
可以地址范围:
192.0.0.0-223.255.255.255
D类:最左侧的四位二进制数字是“1110”,32个网络位,0个主机位;
组播地址,多播地址
11100000 00000000 00000000 00000000 - 11101111 11111111 11111111 11111111
224.0.0.0 - 239.255.255.255
可以地址范围:
224.0.0.0-239.255.255.255
E类:最左侧的四位二进制数字是“1111”,32个网络位,0个主机位;
多用于科学研究
11110000 00000000 00000000 00000000 - 11111111 11111111 11111111 11111111
240.0.0.0 - 255.255.255.255
可以地址范围:
240.0.0.0-255.255.255.255
私有IP地址:
A:10.0.0.0 - 10.255.255.255
B:172.16.0.0 - 172.31.255.255
C:192.168.0.0 - 192.168.255.255
公有IP地址:
A:1.0.0.0 - 9.255.255.255 + 11.0.0.0 - 126.255.255.255
B:128.0.0.0 - 172.15.255.255 + 172.32.0.0 - 191.255.255.255
C:192.0.0.0 - 192.167.255.255 + 192.169.0.0 - 223.255.255.255
NAT:Nework Address Translation ,网络地址转换
SNAT:
将数据包的源IP地址从私有IP地址换为公有IP地址;
多用于让客户端连接到互联网;
DNAT:
将数据包的目的IP地址从公有IP地址换为私有IP地址;
多用于将服务器上的服务发布到互联网;
以太网协议首部:
第一行:
第一字段:目的地址,6bits
第二字段:源地址,6bits
第三字段:类型,2bits
第四字段:数据,46~1500bits
第二行:
第一字段:类型,2bits
第二字段:IP数据报,46~1500bits
第三行:
第一字段:类型,2bits
第二字段:ARP请求/应答,28bits
第三字段:PAD,18bits
第四行:
第一字段:类型,2bits
第二字段:RARP请求/回答,28bits
第三字段:PAD,18bits
UDP协议首部:
第一行:
第一字段:源端口号,16bits;
第二字段:目标端口号,16bits;
第二行:
第一字段:UDP长度,16bits;
第二字段:UDP检验和,16bits;
第三行:(如果有就是)数据
IP PDU 首部:!!!!! 看一下IPv6的首部格式 首部是工作面试中的重点!!!
第一行:
1.Ver:4bits,IP协议的版本号:0110表示IPv6|0100表示IPv4
2.IHLL:4bits,Header Length,首部长度;最少0101 - 最多1111(200Bytes- 600Bytes)
3.TOS and PRIORITY:8bits
0000:最大带宽,最小延迟,最高可靠性,最高负载;只有5中取值方式0000,1000,0100,0010,0001
0:保留为;
000:优先级,000-111
4.Packet Length:16bits,IP协议可以封装的数据包的最大长度65535Bytes;
第二行:
1.Indentifier:16bits,标识来源于那一个上层协议报文;
2.Flag:3bits,
0:是否可分片;
0:是否为最后分片;
0:保留
3.Offset:13bits,被切分为数据分片之后的各分片的顺序标号;
第一个分片为0,第二各分片偏移量为第一个分片的大小除以8的结果,...
第三行:
1.TTL:8bits,为了防止数据包被路由时,因为缺少目的地址而无限循环;
数据包在经过任意的路由设备时,其TTL会减1,一旦TTL减到0,接受此数据包的设备将其丢弃;
2.Protocol:8bits,互联网层和传输层的通信接口,通过此处指明的协议号,互联网层可以在上层找到对应的协议来继续处理该数据;
TCP:6 00000110
UDP:17 00010001
OSPF:89
EUGRP:88
3.Header Checksum:16bits,首部校验和,将整个首部做hash,得到4位16进制数字;通常会在接收放主机上,对于接受到的数据包再次进行hash运算,将得到的结果与此处保存的结果进行异或比较,以确定是否在传输过程中被修改;
第四行:
源IP地址
第五行:
目的IP地址
IP地址的使用:
源IP地址:
1.手动配置
2.自动配置:DHCP,RARP
目的IP地址:
1.手动指定
2.名称解析:
hosts文件
NIS
DNS(手动指定或自动获得)