计算机网络技术
OSI七层协议从上到下依次是:应用层、表示层、会话层、传输层、网络层、数据链路层、物理链路层
1、应用层:
主要功能:用户接口、应用程序。 应用层向应用进程展示所有的网络服务。当一个应用进程访问网络时,通过该层执行所有的动作。
经典设备:网关
典型协议、标准和应用:TELNET、FTP、HTTP
2、表现层
主要功能:数据的表示、压缩和加密。定义由应用程序用来交换数据的格式,该层负责协议转换、数据编码和数据压缩。转发程序在该层进行服务操作。
经典设备:网关
典型协议、标准和应用:ASCLL、PICT、TIFF、JPEG、 MIDI、MPEG
3、会话层
主要功能:会话的建立和结束,在分开的计算机上的两种应用程序之间建立一种虚拟链接,这种虚拟链接称为会话(session)。会话层通过在数据流中设置检查点而保持应用程序之间的同步。允许应用程序进行通信的名称识别和安全性的工作就由会话层完成。
经典设备:网关
典型协议、标准和应用:RPC、SQL、NFS 、X WINDOWS、ASP
4、传输层
主要功能:端到端控制,确保按顺序无错的发送数据包。传输层把来自会话层的大量消息分成易于管理的包以便向网络发送
经典设备:网关
典型协议、标准和应用: TCP、UDP、SPX
5、网络层
主要功能: 路由,寻址,网络层确定把数据包传送到其目的地的路径。就是把逻辑网络地址转换为物理地址。如果数据包太大不能通过路径中的一条链路送到目的地,那么网络层的任务就是把这些包分成较小的包。
经典设备: 路由器,网桥路由器
典型协议、标准和应用: IP、IPX、APPLETALK、ICMP
6、数据链路层
主要功能: 保证误差错的数据链路,一方面接收来自网络层(第三层)的数据帧并为物理层封装这些帧;另一方面数据链路层把来自物理层的原始数据比特封装到网络层的帧中。起着重要的中介作用。数据链路层由IEEE802规划改进为包含两个子层:介质访问控制(MAC)和逻辑链路控制(LLC)。
经典设备: 交换机、网桥、网卡
典型协议、标准和应用: 802.2、802.3ATM、HDLC、FRAME RELAY
7、物理层
主要功能: 传输比特流,工作在最底层,透明地传输比特流,就是传输的信号
经典设备: 集线器、中继器,电缆,发送器,接收器
典型协议、标准和应用: V.35、EIA/TIA-232
互联网协议与协议族
![network-01](https://img2022.cnblogs.com/blog/683233/202209/683233-20220914180041264-475645890.png)
tcp/ip模型和osi模型
![network-02](https://img2022.cnblogs.com/blog/683233/202209/683233-20220914180100939-1867996636.png)
IP地址:网络地址(ip地址与子网掩码进行与运算获得)和主机地址
![network-03](https://img2022.cnblogs.com/blog/683233/202209/683233-20220914180145038-1567512526.png)
A类IP地址:由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”
(地址范围1.0.0.1-126.255.255.254)
B类IP地址:由2个字节的网络地址和2个字节的主机地址组成,网络地址的最高位必须是
“10”(128.1.0.1-191.255.255.254)
C类IP地址:由3字节的网络地址和1字节的主机地址组成,网络地址的最高位必须
是“110”(范围192.0.1.1-223.255.255.254)
模拟进行客户端、DNS服务器、HTTP服务器实现
![network-04](https://img2022.cnblogs.com/blog/683233/202209/683233-20220914180212851-1077692645.png)
网络交换机介绍
网络交换机(又称“网络交换器”),是一个扩大网络的器材,能为子网络中提供更多的连接端口,以便连接更多的计算机 具有性能价格比高、高度灵活、相对简单、易于实现等特点 以太网技术已成为当今最重要的一种局域网组网技术,网络交换机也就成为了最普及的交换机
网络交换机作用
转发过滤:当一个数据帧的目的地址在MAC地址表中有映射时,它被转发到连接目的节点的端口而不是所有端口(如该数据帧为广播帧则转发至所有端口)
学习功能:以太网交换机了解每一端口相连设备的MAC地址,并将地址同相应的端口映射起来存放在交换机缓存中的MAC地址表中
路由器
定义:路由器(Router)又称网关设备(Gateway)是用于连接多个逻辑上分开的网络
逻辑网络是代表一个单独的网络或者一个子网。当数据从一个子网传输到另一个子网时,可通过路由器的路由功能来完成具有判断网络地址和选择IP路径的功能不在同一网段的pc,需要设置默认网关才能把数据传送过去 通常情况下,都会把路由器默认网关当路由器收到一个其它网段的数据包时,会根据“路由表”来决定,把此数据包发送到哪个端口;路由表的设定有静态和动态方法每经过一次路由器,那么TTL值就会减一
socket介绍
#定义:socket(简称 套接字) 是进程间通信的一种方式
UDP 协议
![network-05](https://img2022.cnblogs.com/blog/683233/202209/683233-20220914180236432-912700179.png)
TCP 协议
![network-06](https://img2022.cnblogs.com/blog/683233/202209/683233-20220914180253880-188980654.png)
TCP 三次握手,四次挥手
三次握手
![network-07](https://img2022.cnblogs.com/blog/683233/202209/683233-20220914180311490-411727705.png)
四次挥手
![network-08](https://img2022.cnblogs.com/blog/683233/202209/683233-20220914180330118-1620770452.png)
HTTP 请求流程
步骤1:浏览器首先向服务器发送HTTP请求,请求报文(请求头,请求体)
方法:GET还是POST,GET仅请求资源,POST会附带用户数据;
路径:/full/url/path;
域名:由Host头指定:Host: www.xxx.com
以及其他相关的Header;
如果是POST,那么请求还包括一个Body,包含用户数据
步骤2:服务器向浏览器返回HTTP响应,响应报文(响应头,响应体)
响应代码:200表示成功,3xx表示重定向,4xx表示客户端发送的请求有错误,5xx表示服务器端处理时发生了错误;
响应类型:由Content-Type指定;
以及其他相关的Header;
相应长度:由Content-Length:755
通常服务器的HTTP响应会携带内容,也就是有一个Body,包含响应的内容,网页的HTML源码就在Body中。
步骤3:如果浏览器还需要继续向服务器请求其他资源,就再次发出HTTP请求Web采用的HTTP协议采用了非常简单的请求-响应模式,从而大大简化了开发。
注:当我们编写一个页面时,我们只需要在HTTP请求中把HTML发送出去,不需要考虑如何附带图片、视频等,浏览器如果需要请求图片和视频,它会发送另一个HTTP请求,因此,一个HTTP请求只处理一个资源(此时就可以理解为TCP协议中的短连接,每个链接只获取一个资源,如需要多个就需要建立多个链接)