-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtcp-ip四层理解.txt
78 lines (51 loc) · 3.72 KB
/
tcp-ip四层理解.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
简单认识TCP/IP协议
http://www.cnblogs.com/roverliang/p/5176456.html
TCP/IP协议按照层次分为以下四层:
应用层、传输层、网络层、数据链路层
A发送数据包到B的一个流程
A发送端,每通过一层,就增加一层首部:
1、应用层:HTTP数据(HTTP报文)
2、传输层:TCP首部(包含HTTP数据)
3、网络层:IP首部(TCP首部(包含HTTP数据))
4、链路层:以太网首部(IP首部(TCP首部(包含HTTP数据)))
B接收端,没通过一层,就删除一层首部:
1、链路层:以太网首部(IP首部(TCP首部(包含HTTP数据)))
2、网络层:IP首部(TCP首部(包含HTTP数据))
3、传输层:TCP首部(包含HTTP数据)
4、应用层:HTTP数据(HTTP报文)
-----------------IP协议:-------------------------------------------------------------------
IP协议的作用在于把各种数据包准确无误的传递给对方,其中两个重要的条件是IP地址,和MAC地址(Media Access Control Address)
由于IP地址是稀有资源,不可能每个人都拥有一个IP地址,所以我们通常的IP地址是路由器给我们生成的IP地址,路由器里面会记录我们的MAC地址。
而MAC地址是全球唯一的,除去人为因素外不可能重复。
举一个现实生活中的例子,IP地址就如同是我们居住小区的地址,而MAC地址就是我们住的那栋楼那个房间那个人
ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写,
每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的.
主机A向主机B发送数据为例,A会在自己的ARP缓存表找B的MAC地址,
1、找到的情况下,会把MAC地址写到帧里,发送给B
2、没有找到的情况下,A会在网络上发一个广播,目标是MAC地址是“FF.FF.FF.FF.FF.FF” ,表示向同一网段的所有主机询问:"B的MAC地址是多少?",
网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应:“我的MAC地址是bb-bb-bb-bb-bb-bb”。
这样,主机A就知道了主机B的MAC地址,它就可以向主机B发送信息了。同时它还更新了自己的ARP缓存表,下次再向主机B发送信息时,
直接从ARP缓存表里查找就可以了。ARP缓存表采用了老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。
ARP欺骗解析
http://netsecurity.51cto.com/art/200609/31745.htm
-----------------TCP协议:-------------------------------------------------------------------
如果说IP协议是找到对方的详细地址。那么TCP协议就是把安全的把东西带给对方。各有分工,互不冲突。
按层次分,TCP属于传输层,提供可靠的字节流服务。什么叫字节流服务呢?这个名字听起来让人不知所以然,下面听下我通俗的解释。所谓的字节流,其实就类似于信息切割。
比如你是一个卖自行车的,你要去送货。安装好的自行车,太过庞大,又不稳定,容易损伤。不如直接把自行车拆开来,每个零件上都贴上收货人的姓名。
最后送到后按照把属于同一个人的自行车再组装起来,这个拆解、运输、拼装的过程其实就是TCP字节流的过程。
所谓的字节流服务(Byte Stream Service)是指,为了方便传输,将大块数据分割成以报文段(segment)为单位的数据包进行管理。
而可靠的传输服务是指,能够把数据准确可靠地传给对方。一言以蔽之,TCP 协议为了更容易传送大数据才把数据分割,而且 TCP 协议能够确认数据最终是否送达到对方。
为了确保信息能够确保准确无误的到达,TCP采用了著名的三次握手策略(three-way handshaking).下面我写一段对话来模拟下这三次握手。
三次握手:
1、A向B:我要发数据给你,在不在(syn)
2、B:在线,我看到了信息了,你发吧(syn)
3、A:知道了,我发种子了,你接一下(ACK)
-----------------DNS:-------------------------------------------------------------------
DNS:DNS(Domain names System) 和HTTP协议一样是处于应用层的服务,提供域名到IP地址之间的解析服务。
互联网之间是通过IP地址通信的,但是IP地址并不符合认得记忆习惯,人喜欢记忆有意义的字词。所以DNS服务就为了解决这个问题而生了。其实很好理解,形如我们电脑中host文件
-----------------以太网控制器-------------------------------------------------------------------
也称以太网适配器,通常称为“网卡”。包含软件和硬件统称
安装方法:
1、将网卡插在机器主板的PCI扩展槽里(一般为白色插槽),现在主板都集成有网卡芯片,无需单独购买网卡安装。
2、然后安装所购买网卡中内附的驱动光盘即可。
3、不装网卡的话是无法连接网络的。