计算机网络
一、计算机网络概述
1.计算机网络的定义
将地理位置不同的具有独立功能的多个计算机及其外部设备,通过通信线路和通信设备连接起来,在网络操作系统、网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。
2.计算机网络的组成
- 硬件:计算机、终端、通信设备(如网卡、路由器)。
- 软件:网络操作系统(如Windows Server)、协议栈(如HTTP、FTP)。
- 拓扑结构:通过链路和节点形成物理或逻辑布局(如星型、环型)。
3.核心目标
- 资源共享:包括硬件(如打印机、存储设备)、软件(如数据库、应用程序)和数据资源的共享,减少重复投入并提高效率。
- 信息传递:支持电子邮件、文件传输、即时通讯等功能,实现跨地域的快速通信。
- 分布式处理:将复杂任务分散到多台计算机协同完成,提升系统处理能力和可靠性。
4.计算机网络的发展历程
一、诞生阶段(20世纪50年代末-60年代中期)
- 计算机网络的第一阶段始于20世纪50年代,主要特点是面向终端的远程联机系统,如美国SAGE系统,实现了终端与主机的远程通信,奠定了网络技术基础。
- 局限性
网络功能单一,仅支持数据传输与资源共享,缺乏统一通信标准。
二、形成阶段
- 分组交换网络发展阶段20世纪60年代末至70年代ARPANET采用分组交换技术奠定现代互联网基础TCPIP协议雏形出现实现不同网络互联。
三、互联互通阶段
- 第三阶段是计算机网络互联阶段(20世纪80年代至90年代),以TCP/IP协议为核心实现全球互联,形成互联网雏形,推动了万维网诞生。
四、高速与综合化阶段
- 第四阶段是互联网普及与高速发展期(1990年代至今),以万维网、光纤通信和移动互联网为标志,实现了全球互联、高速传输和智能化应用。
二、网络体系结构-OSI 参考模型
- 由于各个计算机厂商都采用私有的网络模型,因此给通信带来了诸多麻烦,ISO 于 1984 年颁布了 OSI 参考模型。
- OSI 参考模型是一个开放式体系结构,它规定将网络分为七层,从下往上依次是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层
1.物理层
物理层(Physical Layer)的主要功能是完成相邻节点之间原始比特流的传输。物理层的设计主要涉及物理层接口的机械、电气、功能和过程特性,以及物理层接口连接的传输介质等问题。
2.数据链路层
数据链路层(Data Link Layer)负责将上层数据封装成固定格式的帧,在数据帧内封装发送和接收端的数据链路层地址.
- 在以太网中为 MAC 地址,MAC 地址是用来标识网卡的物理地址;
- 在广域网中点到多点的连接情况下,可以是一个链路的标识;
并且为了防止在数据传输过程中产生误码,要在帧尾部加上校验信息。当发现数据错误时,可以重传数据帧。
3.网络层
- 网络层(Network Layer)的主要功能是实现数据从源端到目的端的传输。
- 在网络层,使用逻辑地址来标识一个点,将上层数据封装成数据包,在包的头部封装了源和目的端的逻辑地址。
网络层根据数据包头部的逻辑地址选择最佳的路径,将数据送达目的端。
4.传输层
- 传输层(Transport Layer)的主要功能是实现网络中不同主机上用户进程之间的数据通信。
- 网络层和数据链路层负责将数据送达目的端的主机,而这个数据需要什么用户进程去处理,就需要传输层帮忙了。
5.会话层
- 会话层的主要功能是负责维护两个节点之间的传输联接,确保点到点传输不中断,以及管理数据交换等功能。
- 会话层在应用进程中建立、管理和终止会话。
- 会话层还可以通过对话控制来决定使用何种通信方式,全双工通信或半双工通信。
- 会话层通过自身协议对请求与应答进行协调。
6.表示层
- 表示层为在应用过程之间传送的信息提供表示方法的服务。表示层以下各层主要完成的是从源端到目的端可靠地的数据传送,而表示层更关心的是所传送数据的语法和语义。
- 表示层的主要功能是处理在两个通信系统中交换信息的表示方式,主要包括数据格式变化、数据加密与解密、数据压缩与解压等。
7.应用层
- 应用层是OSI模型中的最高层,是直接面向用户的一层,用户的通信内容要由应用进程解决,这就要求应用层采用不同的应用协议来解决不同类型的应用要求,并且保证这些不同类型的应用所采用的低层通信协议是一致的。
三、TCP/IP 参考模型
1.TCP/IP定义
TCP/IP 是传输控制协议/网际协议(Transmission Control Protocol/Internet Protocol)的简称。
- 早期的 TCP/IP 模型是一个四层结构,从下往上依次是网络接口层、互联网层、传输层和应用层。
- 在后来的使用过程中,借鉴 OSI 的七层参考模型,将网络接口层划分为物理层和数据链路层,形成了一个新的五层结构。
- TCP/IP是一系列协议的集合,所以严格的称呼应该是 TCP/IP 协议簇。
2.物理层
- 在物理层和数据链路层,TCP/IP 并没有定义任何特定的协议。
- 它支持所有标准的、专用的协议,网络可以是局域网(如广泛使用的以太网)、城域网或广域网。所以,TCP/IP实际上只有三个层次。
物理层的主要任务是在物理媒体上实现比特流的透明传输。物理层传输单位是比特。
主要功能: - 定义接口特性
- 定义传输模式:单工、半双工、全双工
- 定义传输速率
- 比特同步
- 比特编码
3.数据链路层
数据链路层的主要任务是把网络层传下来的数据报组装成帧,数据链路层的传输单位是帧。
主要功能:
- 封装接封装帧
- 差错控制: 帧错、位错
- 流量控制
- 访问(接入)控制: 控制对信道的访问
- 包括控制操作系统、硬件的设备驱动、网络适配器、及光纤等物理可见部分。硬件上的范畴均在链路层的作用范围内。
4.网络层
在网络层,TCP/IP 定义了 IP(Internet Protocol,网际协议),
而 IP 又由四个支撑协议组成:
- ARP(地址解析协议)用于将网络层的IPv4地址解析为数据链路层的- - MAC地址,解决IP与MAC地址无直接映射关系的问题
- RARP(逆地址解析协议)、
- ICMP(网际控制报文协议)、
- IGMP(网际组管理协议)。
5.传输层
提供处于网络连接中的两个进程的通信,即端到端通信。传输单位是报文段或用户数据报。
主要功能:
- 可靠传输、不可靠传输
- 差错控制
- 流量控制
- 复用分用
- 复用:多个应用层进程可同时使用下面传输层的服务。
- 分用:传输层把收到的信息分别交付给上面应用层中相应的进程。
传统上,TCP/IP 有两个传输层协议:
- TCP(传输控制协议)
- UDP(用户数据报协议)。、
TCP 协议传输更加稳定可靠,UDP 协议传输效率更高。
1.TCP
- 面向连接网络协议,是指通信双方之间在进行通信之前要先建立连接。比如打电话,双方通话前需要先建立连接。
- 无连接网络协议,是指通信双方不需要事先建立一条通信线路,而是把每个带有目的地址的包送到网络线路上,由系统自主选定路线进行传输。比如QQ发送信息。
- TCP是面向连接的、可靠的进程到进程通信的协议。
- TCP提供全双工服务,即数据可在同一时间双向传输,每一个TCP都有发送缓存和接收缓存,用来临时存储数据。
2.UDP
- UDP协议是无连接、不保证可靠性的传输层协议。发送端不关心发送的数据是否到达目标主机、数据是否出错等,收到数据的主机也不会告诉发送方是否收到了数据,它的可靠性由上层协议来保障。传输数据速度更快,效率更高
6.应用层
决定了向用户提供应用服务时通信的活动。
主要功能:
- 为用户提供接口、处理特定的应用;数据加密、解密、压缩、解压缩;定义数据表示的标准。
- FTP(File Transfer Protocol)文件传输协议。
- DNS(Domain NameServer)域名服务的协议,提供域名到IP地址的转换,允许对域名资源进行分散管理。
- HTTP;
- SMTP(Simple MessageTransfer Protocol)简单邮件传输协议;
- POP3(Post OfficeProtocol)邮局协议用于发送和接收邮件;
- RIP(RoutingInformation Protocol)路由器用来在 IP 网络上交换路由信息的协议;路由信息协议
- Radius(RemoteAuthentication Dial In User Service)拨号接入远端认证协议完成接入用户的认证、授权、计费功能的协议;
等;