特别说明:本文为原创内容,但部分图片来源于网络
# 3.TCP/IP协议
TCP/IP协议是很多的网络协议的集合之后的简称,其中以TCP协议和IP协议为主罢了,有人把这些协议的集合称为TCP/IP协议栈

在用wireshark抓包之后可以看到其实抓到包并没有7层,实际上只有3层、4层或者5层。这是因为OSI模型虽然是国际标准,但是有些过时以及缺点,所以厂商并不是完全遵守该7层模型,一般情况下都是按4层或者5层模型当标准:


看wireshark抓包的实例:
ARP的包只有3层

HTTP的包只有5层

所以在以太网网络TCP/IP模型可以理解为:
一层:物理接口
二层:MAC地址
三层:网络IP
四层:TCP/UDP
五层:应用DATA
思考:为什么网络传输时需要MAC地址,又需要IP地址?
答: 因为MAC地址决定下一跳,IP地址决定最终要到的地方。
# 4.进制转换
4.1十进制和二进制以及十六进制之间的关系

十进制就是当数值加法时,其中出现满位的9,就需要把满位数值9归于零,然后总数值的数位加1位数
二进制就是当数值加法时,其中出现满位的1,就需要把满位数值1归于零,,然后总数值的数位加1位数
十六进制就是当数值加法时,其中出现满位的F,就需要把满位数值F归于零,然后总数值的数位加1位数
4.2二进制和十六进制之间的关系详解
|
二进制 |
十六进制 |
|
0 |
0000 |
|
1 |
0001 |
|
10 |
0002 |
|
11 |
0003 |
|
100 |
0004 |
|
101 |
0005 |
|
110 |
0006 |
|
111 |
0007 |
|
1000 |
0008 |
|
1001 |
0009 |
|
1010 |
A |
|
1011 |
B |
|
1100 |
C |
|
1101 |
D |
|
1110 |
E |
|
1111 |
F |
二进制和十六进制转换时是把二进制按照从右往左的顺序划分为4位一段,然后跟十六进制的1位对应起来,如果二进制左面不足4位就直接补0,例如:
|
二进制 |
十六进制 |
|
|
0101 0101 1001 1101 0010 |
||
|
5 5 9 D 2 |
即 |
559D2 |
|
D 3 D |
||
|
1101 0011 1101 |
D3D |
把十六进制数值转换成二进制之后,在把二进制内所有的位数对应的十进制数值加在一起就可以得到该十六进制数值对应的十进制数值;例如上例中的十六进制数值D3D,转换成二进制是110100111101,在把该二进制所有的位数对应的十进制数值相加,即:2048+1024+0+256+0+0+32+16+8+4+0+1=3389,那么3389就是D3D的十进制数值
(未完待续。。。。。。)