第一章 概述:
1.基本概念:
- 报文(message):网络中交换与传输的数据单元,即站点一次性要发放的数据块。报文中包含了将要发送的完整数据信息,其长短可不一致,长度不限且可变。
- 分组,包(packet):用户发送的数据会被分成多个更小的部分,每个部分前面会加上对数据的描述和控制信息。
message 可以被拆成不同的 packet
packet = header + data
- 协议(protocol):为进行网络中的数据交换而建立的规则、标准或规定
2.分层的网络体系结构:
- 只要能保证对上层的服务接口不变,该层的协议就可以改变
- 分层的好处:每一层都很独立,所以要达到此目的要保证层间耦合程度要小
- OSI 七层模型:物理层、链路层、网络层、传输层、会话层、表示层、应用层
- TCP/IP 五层模型:物理层、数据链路层、网络层、传输层、应用层
- 各层的作用:
名称 | 作用 |
---|---|
物理层 | 传输介质将电信号转化成0/1比特,实现“透明的”比特流传输 |
数据链路层 | 保证数据的无差错传输,以帧为单位 |
网络层 | 实现数据在不同子网中的传输,以分组或包为单位。路由器在该层 |
运输层 | 提供可靠的端到端的数据传输,以报文为单位 |
应用层 | 为操作系统或网络应用程序提供访问网络服务的接口 |
面试经典题:
在浏览器中输入www.XXX.com后执行的全部过程?
1.客户端浏览器通过DNS对域名进行解析,得到对应网站的IP地址,通过这个IP地址找到客户端到服务器端的路径。
2.浏览器发送一个HTTP包,将该包交给传输层,传输层把HTTP包分成报文段,添加源端口和目的端口,并与目的服务器的TCP程序进行连接并建立对话。
3.传输层将信息包传给网络层,网络层做的事通过查找路由表,确定如何到达服务器,同时,网络层将自己的信息加到传入的信息包,形成新的数据包。
4.网络层将新的数据包传给数据链路层,数据链路层将数据包处理成以太网帧(继续添加内容),然后通过物理层进行传输。
5.目的服务器对接收到的数据包进行解析,过程与上述封装成包的过程相反。
6.目的服务器会按照与上述1-4步相同的过程形成一个数据包,发送给客户端,客户端通过5来进行解析,这样就可以访问到相应网站了。