计算机网络
1.定义:将地理位置不同的具有独立功能的多个计算机及其外部设备,通过通信线路和通信设备连接起来,在网络操作系统、网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。
2.组成要素:
名称 | 作用 |
终端设备 | 负责数据收发 |
传输介质 | 连接设备实现数据传输 |
通信协议组成 | 确保数据格式和传输规则统一 |
3.核心目标:通过资源共享与信息交换实现高效通信,使分散的计算机系统能够协同工作,提升信息处理能力和数据利用率。
4.计算机网络发展历程
计算机网络的第一阶段 | 始于20世纪50年代 | 实现了终端与主机的远程通信,奠定了网络技术基础。 |
分组交换网络发展阶段 | 20世纪60年代末至70年代 | 采用分组交换技术奠定现代互联网基础TCPIP协议雏形出现实现不同网络互联。 |
计算机网络互联阶段 | 20世纪80年代至90年代 | 以TCP/IP协议为核心实现全球互联,形成互联网雏形,推动了万维网诞生。 |
互联网普及与高速发展期 | 1990年代至今 | 以万维网、光纤通信和移动互联网为标志,实现了全球互联、高速传输和智能化应用。 |
分层模型
将复杂的流程分解为几个功能相对单一的子过程,使整个流程更加清晰,复杂问题简单化且更容易发现问题并针对性的解决问题。
网络体系结构-OSI 参考模型
为了避免各计算机厂商采用私有模型带来的诸多麻烦,
国际标准化组织(ISO),1984年颁布了开放系统互连(OSI)参考模型
它作为一个开放式体系结构,将网络分为七层
如下:
物理层
- 使用什么样的物理信号来表示数据 1 和 0
- 数据传输是否可同时在两个方向上进行
- 通信双方如何建立和中止连接
数据链路层
- 封装发送端、接收端的数据链路层地址
- 校验信息功能
网络层
- 实现数据从源端到目的端的传输
- 封装源和目的端的逻辑地址
- 根据逻辑地址选择最佳路径,并将数据送达目的端
网络层协议 | 定义 | 功能 |
ICMP协议 | ICMP(Internet Control Message Protocol,互联网控制消息协议)是用于报告错误和其他信息的网络层协议。 | ICMP用于传递网络通信问题的反馈,例如主机不可达、网络不可达等错误信息。它还用于进行网络诊断,如ping和traceroute命令。 |
IGMP协议 | IGMP(Internet Group Management Protocol,Internet组管理协议)是用于管理组播组成员关系的网络层协议。 | IGMP允许主机向组播路由器报告其加入或离开特定组播组的意愿,从而帮助路由器建立和维护组播路由表,实现高效的组播数据传输。 |
IP协议 | IP(Internet Protocol,互联网协议)是一种无连接的网络层协议,负责将数据分割成适合传输的数据包,并通过寻址方式传送到目的地。 | IP协议的主要作用是实现数据包在网络中的传递,它通过使用唯一的IP地址来标识网络中的每个设备,并通过寻址方式将这些数据包传送到正确的目的地。 |
ARP协议 | ARP(Address Resolution Protocol,地址解析协议)是一种用于将网络层地址(如IP地址)映射到物理层地址(如MAC地址)的协议。 | ARP允许设备在网络中查找与特定IP地址相对应的MAC地址,从而确保数据包能够准确地被发送到目标设备。 |
RARP协议 | 定义:RARP(Reverse Address Resolution Protocol,反向地址解析协议)是一种用于将物理层地址(如MAC地址)映射回网络层地址(如IP地址)的协议。 | 功能:RARP主要用于无盘工作站等设备的启动过程,通过广播RARP请求来查询其IP地址,从而能够加入到网络中并进行通信。 |
传输层
- 实现不同用户间(不同主机)的数据通信
- 承上启下
传输层协议 | 定义 | 功能 |
TCP协议 | TCP(Transmission Control Protocol )传输控制协议。是一种面向连接的、可靠的、基于字节流的传输层通信协议。它在IP层之上,提供了面向连接的、可靠的字节流服务。TCP协议通过三次握手建立连接,并通过确认机制、重传控制、流量控制、拥塞控制等机制来确保数据的可靠传输。 | 面向连接:在数据交换之前,必须建立一个TCP连接,这个连接通过三次握手来建立,并在数据交换结束后通过四次挥手来关闭。可靠性:TCP提供可靠传输服务,它通过序列号、确认应答、超时重传、流量控制、拥塞控制等机制确保数据的正确传输。有序性:TCP保证数据按照发送的顺序到达接收方,即数据包的顺序与发送顺序一致。流量控制:TCP通过滑动窗口机制来控制发送方的发送速率,防止接收方来不及处理数据而导致溢出。拥塞控制:TCP能够感知网络中的拥塞情况,并自动调整发送速率,以减轻网络拥塞 |
UDP协议 | UDP(User Datagram Protocol)用户数据报协议。是一种无连接的、不可靠的、基于数据报的传输层协议。它同样在IP层之上,但与TCP不同,UDP不提供数据包的排序、流量控制或错误控制,这些功能由上层协议(如应用层)来负责。 | 无连接:UDP在发送数据之前不需要建立连接,发送方和接收方之间也不需要交换任何控制信息。不可靠性:UDP不保证数据包的到达、顺序或完整性。如果数据包在传输过程中丢失或损坏,UDP不会进行重传或修复。低开销:由于UDP不需要建立连接和进行复杂的错误控制,因此它的开销相对较小,适合对实时性要求较高但对可靠性要求不高的应用,如视频、音频传输等。支持一对多通信:UDP支持广播和多播功能,即一个UDP报文可以同时发送给多个接收 |
总的来说 | TCP适用于需要可靠传输的应用场景,如文件传输、网页浏览等。 | UDP则适用于对实时性要求较高但对可靠性要求不高的应用场景,如视频直播、实时游戏等。 |
会话层
- 建立两个节点(用户)间的会话关系
表示层
- 提供表示方法的服务
- 数据格式变化、数据加密与解密、数据压缩与解压等
- 语法转换、语法选择和联接管理
- 表示层提供的数据加密服务是重要的网络安全要素,其确保了数据的安全传输,也是各种安全服务最为重视的关键
应用层
- OSI模型中的最高层
- 直接面向用户的一层
应用层协议 | 定义 | 功能 |
HTTP协议 | HTTP(HyperText Transfer Protocol,超文本传输协议)是一种用于分布式、协作式、超媒体信息系统应用层的协议。它是万维网(WWW)的基础协议。 | 用于在Web浏览器和服务器之间传输数据,主要是HTML文档。支持客户端-服务器模式的通信,客户端打开一个连接以发出请求,然后等待直到收到服务器的响应。定义了请求和响应的格式,包括GET、POST等请求方法和响应状态码。 |
FTP协议 | FTP(File Transfer Protocol,文件传输协议)是用于在网络上进行文件传输的协议。 | 允许用户通过客户端程序连接到远程服务器,上传或下载文件。支持文件的列表、删除、重命名等操作。使用两个端口进行通信,一个用于控制连接,另一个用于数据传输。 |
TFTP协议 | TFTP(Trivial File Transfer Protocol,简单文件传输协议)是一种简单的文件传输协议,比FTP更轻量级。 | 用于小型文件传输,通常用于网络设备配置文件的备份和恢复。不支持目录操作,只能进行文件的读写。使用UDP协议进行传输,因此不提供可靠的数据传输服务。 |
SMTP协议 | SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)是用于发送电子邮件的协议。 | 许邮件服务器之间传输邮件。定义了邮件的格式和传输过程,包括邮件的发送、接收和转发。支持多种邮件格式,如MIME、HTML等。 |
SNTP协议 | SNTP(Simple Network Time Protocol,简单网络时间协议)是用于同步网络中计算机的时间的协议。 | 允许客户端从服务器获取准确的时间信息。使用UDP协议进行传输,减少了网络开销。支持多种时间同步策略,如广播、多播和点对点。 |
DNS协议 | DNS(Domain Name System,域名系统)是一种用于将域名转换为IP地址的系统。 | 允许用户通过易于记忆的域名访问网站,而不是输入复杂的IP地址。提供域名解析服务,将域名转换为对应的IP地址。支持正向和反向解析,以及缓存机制以提高查询效率。 |
SNMP协议 | SNMP(Simple Network Management Protocol,简单网络管理协议)是一种应用层协议,专门设计用于在IP网络中管理网络节点,如服务器、工作站、路由器、交换机等 | 设备监视:获取设备的状态信息,如CPU利用率、内存使用情况、网络流量等。配置管理:修改设备的配置参数,如路由表、ACL规则等。告警和通知:生成警报和通知,当设备出现故障或达到预定的阈值时。远程管理:通过网络远程管理设备,如重启设备、远程诊断等。 |
1~3 层的协议称为点到点的协议,而把 4~7 层的协议称为端到端的协议。
传输层要决定对会话层用户(最终的网络用户)提供什么样的服务,有承上启下的作用。