一文读懂通信协议与网络协议:定义、区别与应用
一文读懂通信协议与网络协议:定义、区别与应用
在计算机网络和通信领域,协议是确保数据正确传输和交换的关键。本文将详细解释通信协议和网络协议的区别,并进一步阐述各种相关概念,如单工、半双工和全双工通信方式,网络体系结构,以及各种网络协议和通信协议的定义和作用。
通信协议与网络协议的区别
通信协议和网络协议的主要区别如下:
含义不同:
通信协议是指双方实体完成通信或服务所必须遵循的规则和约定。
网络协议是为计算机网络中进行数据交换而建立的规则、标准或约定的集合,是互联网上各个计算机之间进行数据传输和交换所必须共同遵循的规范。
用途不同:
通信协议主要用于点对点通信,特别是传统的电话通信。
网络协议则是为了保证在互联网上进行的各种数据传输能够高效、可靠、安全地进行而设计的。
总的来说,网络协议是网络上所有设备之间通信规则的集合,它规定了通信时信息必须采用的格式和这些格式的意义;而通信协议则更侧重于在特定场景下,如电话通信中,实现数据的正确传输和交换。
通信方式的分类
通信方式主要分为三类:
单工通信(Simplex Communication):在这种方式中,消息只能单向传输,即从发送端到接收端。在单工通信中,通信信道是单向的,发送端和接收端是固定的,发送端只能发送信息,不能接收信息;接收端只能接收信息,不能发送信息。
半双工通信(Half-duplex Communication):这种通信方式允许双方都能收发消息,但不能同时进行。在半双工通信中,发送端和接收端可以相互转换角色,但必须轮流交替地进行,信息在一个时刻只能在一个方向上传输。
全双工通信(Full-duplex Communication):在全双工通信中,通信的任意时刻,线路上都存在从A到B和从B到A的双向信号传输。这意味着在全双工通信中,双方可以同时进行收发消息。
以上三种通信方式各有其特点和应用场景,例如单工通信常用于广播等场景,半双工通信常用于对讲机等设备,全双工通信则广泛应用于电话、手机等设备中。
网络体系结构
网络体系结构是指计算机之间互相通讯的层次,以及各层中的协议和层次之间接口的集合。它为网络硬件、软件、协议、存取控制和网络拓扑提供标准。基于OSI的7层模型是常见的网络体系结构。
网络拓扑结构
网络拓扑结构定义了用传输媒体互连各种设备的物理布局,即用什么方式把网络中的计算机等设备连接起来。常见的网络拓扑结构有星型结构、环型结构、总线结构、分布式结构、树型结构、网状结构、蜂窝状结构等。
设备之间的联系
网络协议
网络协议是计算机网络中进行数据交换为建立的规则、标准、约定的集合。其主要目的是描述进程之间的信息交换数据。网络协议确保不同计算机之间能够相互通信,即使它们使用的字符集不同。常见的协议有TCP/IP协议(传输控制协议/互联网协议,是internet采用的标准协议)、IPX/SPX协议。
网络协议三要素:
- 语义:解释控制信息每个部分的意义。它规定了需要发出何种控制信息,以及完成的动作与做出什么样的响应。
- 语法:用户数据与控制信息的结构与格式,以及数据出现的顺序。
- 时序:对事件发生顺序的详细说明。
网络协议层次划分:
为了使不同厂家的计算机能够相互通信,国际标准化组织(ISO)建立了计算机网络,即“开放系统互联参考模型”(OSI/RM模型)。自上而下分别是:
网络协议层次 | 作用 | 解释 | 举例 |
---|---|---|---|
应用层 | 与其它计算机进行通讯的一个应用,向应用程序提供服务。 | 面向用户 | DHCP、DNS、FTP、Gopher、HTTP、IMAP4、IRC、NNTP、XMPP、POP3、SIP、SMTP、SNMP、SSH、TELNET、RPC、RTCP、RTP、RTSP、SDP、SOAP、GTP、STUN、NTP、SSDP、BGP、RIP等 |
表示层 | 定义数据格式及加密 | 面向用户,为异种机通信提供一种公共语言,以便能进行互操作 | |
会话层 | 定义了如何开始、控制和结束一个会话,包括对多个双向消息的控制和管理 | 面向用户,可使应用建立和维持会话,并能使会话获得同步 | |
传输层 | 数据传送服务:包括是否选择差错恢复协议还是无差错恢复协议,及在同一主机上对不同应用的数据流的输入进行复用,还包括对收到的顺序不对的数据包的重新排序功能。缓冲作用:计算机经过网络进行数据通信时,当网络层服务质量不能满足要求时,它将服务加以提高,以满足高层的要求;当网络层服务质量较好时,它只用很少的工作。复用作用:在一个网络连接上创建多个逻辑连接。 | 世界上各种通信子网在性能上存在着很大差异。例如电话交换网,分组交换网,公用数据交换网,局域网等通信子网都可互连,但它们提供的吞吐量,传输速率,数据延迟通信费用各不相同.对于会话层来说,却要求有一性能恒定的界面.传输层就承担了这一功能.它采用分流/合流,复用/解复用技术来调节上述通信子网的差异,使会话层感受不到;差错恢复,流量控制 | TCP、UDP、TLS、DCCP、SCTP、RSVP、OSPF等 |
网络层 | 建立网络连接,对端到端的包传输进行定义,它定义了能够标识所有结点的逻辑地址,还定义了路由实现的方式和学习的方式。 | 路由选择和中继、激活,终止网络连接、在一条数据链路上复用多条网络连接,多采取分时复用技术 、差错检测与恢复、排序。流量控制、服务选择、网络管理 | IP (IPv4、IPv6)、ICMP、ICMPv6、IGMP、IS-IS、IPsec、ARP、RARP等 |
数据链路层 | 定义了在单个链路上如何传输数据,为终端设备间的数据通信提供传输媒体及其连接,简单说就是数据通道。数据传输单元是帧 | Wi-Fi(IEEE 802.11)、WiMAX(IEEE 802.16)、ATM、DTM、令牌环、以太网、FDDI、帧中继、GPRS、EVDO、HSPA、HDLC、PPP、L2TP、PPTP、ISDN、STP等 | |
物理层 | 为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境。 | 以太网、调制解调器、电力线通信(PLC)、SONET/SDH、G.709、光导纤维、同轴电缆、双绞线等 |
通信协议
通信协议定义了数据格式,作用于数据链路层。它规定了数据单元使用的格式,信息单元应该包含的信息与含义,连接方式,信息发送和接收的时序,从而确保网络中数据顺利地传送到确定的地方。在计算机通信中,两台计算机在进行通信时,必须使用的通信协议。
通讯协议
通讯协议又称通信规程,是指通信双方对数据传送控制的一种约定。约定中包括对数据格式,同步方式,传送速度,传送步骤,检纠错方式以及控制字符定义等问题做出统一规定,通信双方必须共同遵守,它也叫做链路控制规程。常用协议举例:如TCP/IP协议定义了在互联网络中如何传递、管理信息(文件传送、收发电子邮件、远程登录等),并制定了在出错时必须遵循的规则。
网络通信协议
网络通信协议是一种网络通用语言,为连接不同操作系统和不同硬件体系结构的互联网络引提供通信支持,是一种网络通用语言。
网关
网关是在网络层以上实现网络互连的设备。它使用在不同的通信协议、数据格式或语言,甚至体系结构完全不同的两种系统之间,网关是一个翻译器,同网桥,对收到的信息进行重新打包,以适应目的系统的需求。最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。
进程与线程
进程:(广义)一个具有一定独立功能的程序关于某个数据集合的一次运行活动。(一段程序的执行过程)它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。(狭义)正在运行的程序的实例
线程:线程是程序中一个单一的顺序控制流程。有时被称为轻量进程(Lightweight Process,LWP),是程序执行流的最小单元。
特点:
(1)线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源;
(2)一个线程可以创建和撤消另一个线程,同一进程中的多个线程之间可以并发执行(多线程);
(3)线程之间的相互制约,致使线程在运行中呈现出间断性(如极速开关组,设备执行有延迟);
(4)线程有就绪、阻塞和运行三种基本状态,就绪状态是指线程具备运行的所有条件,逻辑上可以运行,在等待处理机;运行状态是指线程占有处理机正在运行;阻塞状态是指线程在等待一个事件(如某个信号量),逻辑上不可执行。
CPU、进程、线程、程序的联系
(1)进程内有一个相对独立的、可调度的执行单元(线程),是系统独立调度和分派CPU的基本单位指令运行时的程序的调度单位。
(2)进程是线程的容器。
(3)程序是指令、数据及其组织形式的描述,进程是程序的实体。
数据库与服务器
数据库是应用系统,电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增、截取、更新、删除等操作。数据库管理系统(英语:Database Management System,简称DBMS)是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。有MySQL、Microsoft SQL Server、Oracle数据库
服务器(server)是安装应用系统、操作系统的机器。 也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。服务器的构成包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似。(cpu、芯片组、内存、磁盘系统等) 服务器系统的硬件构成:中央处理器、内存、芯片组、I/O总线、I/O设备、电源、机箱和相关软件。这也是服务器关注的相关指标。如整个服务器系统就像一个人,处理器就是服务器的大脑,而各种总线就像是分布于全身肌肉中的神经,芯片组就像是骨架,而I/O设备就像是通过神经系统支配的人的手、眼睛、耳朵和嘴;而电源系统就像是血液循环系统,它将能量输送到身体的所有地方。 服务器与PC机:例如PC机在一个时刻通常只为一个用户服务。 在信息系统中,服务器主要应用于数据库和Web服务,而PC主要应用于桌面计算和网络终端, 服务器与主机:主机是通过终端给用户使用的,服务器是通过网络给客户端用户使用的。
操作系统
操作系统(英语:operating system,缩写作 OS)是管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石。操作系统位于底层硬件与用户之间,用户可以通过操作系统的用户界面(图形用户界面、命令行界面),输入命令。操作系统则对命令进行解释,驱动硬件设备,实现用户要求。
作用:操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。 进程管理(Processing management) 内存管理(Memory management) 文件系统(File system) 网络通信(Networking) 安全机制(Security) 用户界面(User interface) 驱动程序(Device drivers) 组成:内核、驱动程序、接口库、外围。 驱动程序: 最底层的、直接控制和监视各类硬件的部分,它们的职责是隐藏硬件的具体细节,并向其他部分提供一个抽象的、通用的接口。 内核:操作系统之最内核部分,通常运行在最高特权级,负责提供基础性、结构性的功能。 支承库:(亦作“接口库”)是一系列特殊的程序库,它们职责在于把系统所提供的基本服务包装成应用程序所能够使用的编程接口(API),是最靠近应用程序的部分。例如,GNU C运行期库就属于此类,它把各种操作系统的内部编程接口包装成ANSI C和POSIX编程接口的形式。 外围: 所谓外围,是指操作系统中除以上三类以外的所有其他部分,通常是用于提供特定高级服务的部件。例如,在微内核结构中,大部分系统服务,以及UNIX/Linux中各种守护进程都通常被划归此列。 分类: 根据工作方式分为批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统等; 根据架构可以分为单内核操作系统等; 根据指令的长度分为8bit, 16bit, 32bit,64bit的操作系统。 按应用领域划分:服务器操作系统、桌面操作系统和嵌入式操作系统。 服务器操作系统: 服务器使用的是Unix操作系统,由于是Unix的后代,大多都有较好的作服务器平台的功能。 服务器操作系统主要分为四大流派:Windows Server、Netware、Unix、Linux。 服务器软件的定义:服务器软件工作在客户端-服务器(C/S)或浏览器-服务器(B/S)的方式。 根据服务器提供的服务类型不同,分为 文件服务器(File Server) 数据库服务器(Database Server) 邮件服务器(Mail Server 网页服务器(Web Server) FTP服务器(FTP Server) 域名服务器(DNS Server) 应用程序服务器(AP Server) 代理服务器(Proxy Server)等。 服务器故障排除:缩小范围 扎实的数据中心操作知识, 每个应用程序涉及多少台服务器?----按照应用将服务器分类 基本的网络设置是什么? 当前是什么基础设施?