计算机网络的功能:实现电脑之间的通信
集线器方式:广播分发不用记录地址,双绞线
交换机方式:能记录Mac地址,全双工
路由器方式:IP地址(使用IP协议进行寻址与路由)
网络层次划分
HTTP请求报文解剖
HTTP Request :HTTP请求
Request Line:请求行
Header:请求头
Request Body:请求体
以太网帧的MTU为1500字节(超过需分片)
封装:
1、物理层
负责计算机的机器间连接,可以通过光纤,电缆实现, wifi传输频率,Bluetooth的频率,电话网络
2、数据链路层
采用差错检测、差错控制和流量控制等方法,向网络层提供高质量的数据传输服务。
对于网络层,由于链路层的存在,而不需要关心物理层具体采用了那种传输介质和通信设备。
滑动窗口协议:差错控制,保证传输正常
ARP协议作用:寻找MAC地址,地址解析协议,即ARP(Address Resolution Protocol)
3、网络层
如果是在同一个子网,那就用广播的形式把数据传送给对方。
如果不在同一个子网,那就把数据发送给网关,让网关进行转发。
IP协议Internet Protocol(网际互连协议):寻址与路由+分段与重组(就是将大的数据分割运到目的地再重组)
DNS服务器:解析域名,域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。
4、传输层(端口到端口)
找到与应用对应的端口,实现应用间的通信。
5、应用层(最接近用户)
该层为用于通信的应用程序和用于消息传输的底层网络提供接口。
WAN:广域网(英语:Wide Area Network)
LAN:局域网 (英语:Local Area Network)
子网划分
ip地址分类
- A类:(1.0.0.0-126.0.0.0)(默认子网掩码:255.0.0.0或 0xFF000000)第一个字节为网络号,后三个字节为主机号。该类IP地址的最前面为
“0”
,所以地址的网络号取值于1~126之间。一般用于大型网络。 - B类:(128.0.0.0-191.255.0.0)(默认子网掩码:255.255.0.0或0xFFFF0000)前两个字节为网络号,后两个字节为主机号。该类IP地址的最前面为
“10”
,所以地址的网络号取值于128~191之间。一般用于中等规模网络。 - C类:(192.0.0.0-223.255.255.0)(子网掩码:255.255.255.0或 0xFFFFFF00)前三个字节为网络号,最后一个字节为主机号。该类IP地址的最前面为
“110”
,所以地址的网络号取值于192~223之间。一般用于小型网络。
注:只有A,B,C有网络号和主机号之分,D类地址和E类地址没有划分网络号和主机号,D类地址以1110开头,地址范围是224.0.0.0~239.255.255.255,D类地址作为IP组播地址(一对多的通信); E类地址以1111开头,地址范围是240.0.0.0~255.255.255.255,E类地址为保留地址,供以后使用。。
特殊地址
1)255.255.255.255
该IP地址指的是受限的广播地址。受限广播地址与一般广播地址(直接广播地址)的区别在于,受限广播地址只能用于本地网络,路由器不会转发以受限广播地址为目的地址的分组;一般广播地址既可在本地广播,也可跨网段广播。例如:主机192.168.1.1/30上的直接广播数据包后,另外一个网段192.168.1.5/30也能收到该数据报;若发送受限广播数据报,则不能收到。
注:一般的广播地址(直接广播地址)能够通过某些路由器(当然不是所有的路由器),而受限的广播地址不能通过路由器。
2)0.0.0.0
常用于寻找自己的IP地址,例如在我们的RARP,BOOTP和DHCP协议中,若某个未知IP地址的无盘机想要知道自己的IP地址,它就以255.255.255.255为目的地址,向本地范围(具体而言是被各个路由器屏蔽的范围内)的服务器发送IP请求分组。
3)回环地址
本地回环地址指的是以127开头的地址(127.0.0.1 - 127.255.255.254)
,回环地址表示本机的地址,常用于对本机的测试,用的最多的是127.0.0.1。
4)A、B、C类私有地址
私有地址(private address)也叫专用地址,它们不会在全球使用,只具有本地意义。
A类私有地址:10.0.0.0/8,范围是:10.0.0.0~10.255.255.255
B类私有地址:172.16.0.0/12,范围是:172.16.0.0~172.31.255.255
C类私有地址:192.168.0.0/16,范围是:192.168.0.0~192.168.255.255
端口:
8080端口是被用于WWW代理服务的,可以实现网页浏览,经常在访问某个网站或使用代理服务器的时候,会加上“:8080”端口号。另外Apache Tomcat web server安装后,默认的服务端口就是8080。
自动重传请求(Automatic Repeat-reQuest,ARQ)是OSI模型中数据链路层的错误纠正协议之一。它包括停止等待ARQ协议和连续ARQ协议
停止等待协议[数据链路层协议]
无差错情况
出错情况:
介质访问控制[数据链路层协议]
CSMA协议[Carrier Sense Multiple Access载波侦听多址接入]
动态划分中的随机访问介质访问控制中的一个协议,CSMA的核心是"先听再说"。在接入信道之前须要进行监听。当发现信道空闲后。才能进行接入。
CSMA/CD的全称是Carrier Sense Multiple Access with Collision Detection,即基于冲突检测的载波监听多路访问技术。
CSMA/CA(Carrier Sense Multiple Access with Collision Avoid,即带有冲突避免的载波侦听多路访问)是一种数据传输是避免各站点之间数据传输冲突的算法,其特点是发送包的同时不能检测到信道上有无冲突,只能尽量“避免”。
ICMP(Internet Control Message Protocol)
控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。比如 ping命令或实现更好的路由。
DNS
传输层协议:TCP和UDP
传输控制协议(TCP,Transmission Control Protocol)
TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议,也就是说,在收发数据前,必须和对方建立可靠的连接。 一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂, 只简单的描述下这三次对话的简单过程:
UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议
许多应用只支持UDP,如:多媒体数据流,不产生任何额外的数据,即使知道有破坏的包也不进行重发。当强调传输性能而不是传输的完整性时,如:音频和多媒体应用,UDP是最好的选择。在数据传输时间很短,以至于此前的连接过程成为整个流量主体的情况下,UDP也是一个好的选择
TCP的链接建立 [三次握手]
SYN:SYN:同步序列编号(Synchronize Sequence Numbers)。是TCP/IP建立连接时使用的握手信号。在客户机和服务器之间建立正常的TCP网络连接时,客户机首先发出一个SYN消息,服务器使用SYN+ACK应答表示接收到了这个消息,最后客户机再以ACK消息响应。这样在客户机和服务器之间才能建立起可靠的TCP连接,数据才可以在客户机和服务器之间传递
ACK (Acknowledge character)即是确认字符,在数据通信中,接收站发给发送站的一种传输类控制字符。表示发来的数据已确认接收无误。
在TCP/IP协议中,如果接收方成功的接收到数据,那么会回复一个ACK数据。通常ACK信号有自己固定的格式,长度大小,由接收方回复给发送方。
链接释放【四次挥手】
- 四次挥手释放连接时,等待2MSL的意义?
- 第 一,
为了保证A发送的最有一个ACK报文段能够到达B
。这个ACK报文段有可能丢失,因而使处在LAST-ACK状态的B收不到对已发送的FIN和ACK 报文段的确认。B会超时重传这个FIN和ACK报文段,而A就能在2MSL时间内收到这个重传的ACK+FIN报文段。接着A重传一次确认。 - 第二,就是防止上面提到的已失效的连接请求报文段出现在本连接中,A在发送完最有一个ACK报文段后,再经过2MSL,就可以使本连接持续的时间内所产生的所有报文段都从网络中消失。
TCP长连接(和短链接)及优缺点
路由表的更新
为什么RIP协议位于应用层?
因为RIP的报文封装在UDP中,使用端口号520,所以是应用层协议。
参考与更多
如何修改出厂的Mac地址