计算机网络——1.概述
1. 网络协议大概规定了什么呢?
在一定字节中,包含各种字段(版本号、首部长度、协议、源地址、目的地址等)。比如IP协议包含的大概内容如下:
2. 应用程序通信需要协议
为了实现应用程序的功能,定通信标准,应用层协议,应用层协议很多,比如SMTP,DNS,HTTP,FTP。
每种应用程序在应用层规定的协议格式和功能各不相同,比如http协议用于web,它所能实现的功能包括GET,POST等,这些功能方法都是规定好了的,名字就是这个,不能改变。再比如FTP文件传输协议,它规定的方法有重命名、删除、上传等,那它也只能实现这些功能。
3. 计算机通信协议包含三要素
三要素:语法、语义和同步。
4. 封装和解封
封装:发送端加上传输层首部、网络层首部、数据链路层首部的过程叫做封装。
解封:接收端收到后,去掉数据链路层首部、去掉网络层首部、去掉传输层首部的过程叫做解封。
每经过一个链路、数据包都要重新封装成帧。比如从计算机网卡出来到第一个路由器,这是一个链路,这个链路有自己的帧格式,这样的帧在这条链路上传递。再比如从一个路由器到另一个路由器之间也是一个链路,这条链路也有自己的帧格式进行数据帧传递。
5. TCP/IP协议分层,以及将计算机通信分层设计的好处
OSI参考模型和TCP/IP协议
6. 网络和互联网
网络:使用集线器或交换机将计算机连接起来构成一个网络。
互联网:使用路由器将多个网络连接起来。因特网Internet是最大的互联网。
注:如果网络之间使用了路由器就是互联网,所以如果两个交换机(多台计算机连在交换机上连成了一个网络)直接相连,这只能是网络,并不是互联网。
7. OSI参考模型
共有7层。
应用层:产生网络流量的应用程序才属于应用层。
表示层:编码方式。
传输层:除了可靠传输、差错控制,还可以流量控制和拥塞避免。
会话层:面向用户的连接。
传输层和会话层的区别:会话层面向用户,会话层可以使用多个传输层的连接,也可以使用1个。
额外:netstat -n
查看传输层建立的连接,netstat -nb
可辅助查看木马。
网络层:控制选择路径,为数据包选路,只负责转发,丢了不管。
额外:ping www.baidu.com
可以看到能否和百度站点连接成功。tracert www.baidu.com
可跟踪数据包经过的各个路径。
数据链路层:将数据包封装成能够在不同网络传输的帧。功能:将网卡数据包装成帧,从传输层通过集线器到路由器,再由路由器封装成路由器之间传输的帧格式,传到下一个路由器。
额外:集线器是最早的组网设备,它用物理设备进行传送。几台计算机(A、B、C、D)连接在一个集线器上就组成了以太网,如果A要和B通信,A有源MAC地址,然后指定要发到B计算机的MAC地址上,然后A发信息,此时C和D也是可以收到此消息的,只不过因为C和D的MAC地址并不是A要找的,C和D会收不到A的消息,只有B才能收到。此外,集线器有个特点,当A和B通信的时候,这个集线器上的其它计算机之间就不能通信了,否则会引起冲突。因此数据链路层,使用CSMA/CD协议去解决此类冲突,有冲突就想办法避免冲突。在计算机网络中,这个协议CSMA/CD一般用在计算机网卡到路由器之间的链路传输上。而在接下来路由器和路由器之间的链路上传输时使用的就是PPP协议了,因为此时不需要解决冲突了。
物理层:通信接口标准、传输介质等。定义接口标准,保证速率。
注:应用层、表示层、会话层、传输层,是在通信主机上完成的功能;网络层、数据链路层、物理层是在网络设备上实现的功能。
8. 网络排错和网络安全
9. TCP/IP通信过程
网页写入缓存时:分段编号放入缓存(传输层进行),缓存中的数据,等接收端确认收到才删除。
传输层:为数据段。
网络层:为数据包。
数据链路层:帧(加MAC地址),一个数据链路的数据单元;网卡接口和路由器接口是对等实实体,都在数据链路层;PPP协议不需要地址(只是FF标识),所以并非所有链路都有MAC地址。
额外:集线器,网卡会屏蔽无用请求。
数据帧:里面有数据包,也有数据段。
网络层对等实体:网络层,和各个路由器。
数据链路层对等实体:网卡接口域路由器接口,路由器接口和路由器接口。
IP地址和MAC地址的区别:
IP地址:决定最终传给哪台计算机。
MAC地址:决定下一跳传给谁。
10. 每种设备工作在哪一层
交换机:可以工作在数据链路层。
集线器:为物理层。
路由器:是网络层,但肯定会包含数据链路层和物理层的功能。
11. OSI参考模型和TCP/IP协议
OSI参考模型为7层,TCP/IP为4层。这里网络层和传输层的各种协议要记住。
12. 计算机网络分类
局域网:自己花钱买设备,带宽固定。
广域网:覆盖范围大,花钱租带宽,带宽和费用挂钩。
城域网:
个人区域网:
额外:路由器有广域网接口;交换机为局域网接口。