网络协议相关知识,网络协议基础知识
网络协议是什么?
网络之间互连的协议外文是Internet
Protocol的外语缩写,中文缩写为“网协”。缩写为IP。
网络之间互连的协议也就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。IP地址具有唯一性,根据用户性质的不同,可以分为5类。另外,IP还有进入防护,知识产权,指针寄存器等含义。
IP协议中还有一个非常重要的内容,那就是给因特网上的每台计算机和其它设备都规定了一个唯一的地址,叫做“IP
地址”。由于有这种唯一的地址,才保证了用户在连网的计算机上操作时,能够高效而且方便地从千千万万台计算机中选出自己所需的对象来。如今电信网正在与
IP网走向融合,以IP为基础的新技术是热门的技术,如用IP网络传送话音的技术(即VoIP)就很热门,其它如IP
overATM、IPoverSDH、IP
over
WDM等等,都是IP技术的研究重点。
所谓IP地址就是给每个连接在互联网上的主机分配的一个32位地址。
IP地址就好像电话号码(地址码):有了某人的电话号码,你就能与他通话了。同样,有了某台主机的IP地址,你就能与这台主机通信了。
按照TCP/IP(Transport
Control
Protocol/Internet
Protocol,传输控制协议/Internet协议)协议规定,IP地址用二进制来表示,每个IP地址长32bit,比特换算成字节,就是4个字节。例如一个采用二进制形式的IP地址是一串很长的数字,人们处理起来也太费劲了。为了方便人们的使用,IP地址经常被写成十进制的形式,中间使用符号“.”分开不同的字节。于是,上面的IP地址可以表示为“10.0.0.1”。IP地址的这种表示法叫做“点分十进制表示法”,这显然比1和0容易记忆得多。
TCP/IP协议的一些基础知识?
相信大家在学习互联网网页开发的时候应该接触过关于网络协议的一些知识点吧。今天IT培训就来简单了解一下,关于TCP/IP协议的一些基础知识。
1.TCP/IP的具体含义从字面意义上讲,有人可能会认为TCP/IP是指TCP和IP两种协议。实际生活当中有时也确实就是指这两种协议。然而在很多情况下,它只是利用IP进行通信时所必须用到的协议群的统称。具体来说,IP或ICMP、TCP或UDP、TELNET或FTP、以及HTTP等都属于TCP/IP协议。他们与TCP或IP的关系紧密,是互联网必不可少的组成部分。TCP/IP一词泛指这些协议,因此,有时也称TCP/IP为网际协议群。互联网进行通信时,需要相应的网络协议,TCP/IP原本就是为使用互联网而开发制定的协议族。因此,互联网的协议就是TCP/IP,TCP/IP就是互联网的协议。2.数据包包、帧、数据包、段、消息以上五个术语都用来表述数据的单位,大致区分如下:包可以说是全能性术语;帧用于表示数据链路层中包的单位;数据包是IP和UDP等网络层以上的分层中包的单位;段则表示TCP数据流中的信息;消息是指应用协议中数据的单位。每个分层中,都会对所发送的数据附加一个部,在这个部中包含了该层必要的信息,如发送的目标地址以及协议相关信息。通常,为协议提供的信息为包部,所要发送的内容为数据。在下一层的角度看,从上一层收到的包全部都被认为是本层的数据。3.数据处理流程①应用程序处理先应用程序会进行编码处理,这些编码相当于OSI的表示层功能;编码转化后,邮件不一定马上被发送出去,这种何时建立通信连接何时发送数据的管理功能,相当于OSI的会话层功能。②TCP模块的处理TCP根据应用的指示,负责建立连接、发送数据以及断开连接。TCP提供将应用层发来的数据顺利发送至对端的可靠传输。为了实现这一功能,需要在应用层数据的前端附加一个TCP部。③IP模块的处理IP将TCP传过来的TCP部和TCP数据合起来当做自己的数据,并在TCP部的前端加上自己的IP部。IP包生成后,参考路由控制表决定接受此IP包的路由或主机。④网络接口(以太网驱动)的处理从IP传过来的IP包对于以太网来说就是数据。给这些数据附加上以太网部并进行发送处理,生成的以太网数据包将通过物理层传输给接收端。
关于网络的通信协议的知识应该学点什么?
当然是局域网的一些基本的协议啊 其实一些协议你只需要了解就好
开放系统互联协议中最早的协议之一,它为连接不同操作系统和不同硬件体系结构的互联网络提供通信支持,是一种网络通用语言。TCP/IP协议定义了在互联网络中如何传递、管理信息(文件传送、收发电子邮件、远程登录等),并制定了在出错时必须遵循的规则。
IPX/SPX(Internet Packet eXchange/Sequenced Packet eXchange)互联网信息交换包/顺序信息交换包
IPX和SPX是Novell NetWare协议栈的一部分,用于网络服务器和工作站之间传输数据;IPX和SPX两层协议造就了Novell网络的特色,几乎成了Novell网的代名词。
NetBIOS(Network Basic Input/Output System)网络基本输入/输出系统
网络会话层协议,管理数据交换和网络访问。它向API(Application Program Interface,应用程序接口)提供一组协调性命令,利用下一层网络服务将信息逐个节点地进行传送,从而把应用程序与下层的网络操作系统加以隔离。
NetBEUI(NetBIOS Extended User Interface)NetBIOS用户扩展接口
用于LAN Manager、LAN Server、Windows for Workgroups和Windows NT等的NetBIOS增强版本,它确定了传送帧格式并增加了许多功能。
开放系统互联(OSI)模型是由国际标准化组织(ISO)于1984年提出的一种标准参考模型,是一种关于由不同供应商提供的不同设备和应用软件之间的网络通信的概念性框架结构。现在它被公认为是计算机通信和 internet 网络通信的一种基本结构模型。当今使用的大多数网络通信协议都是基于 OSI 模型结构。OSI 模型将通信处理过程定义为七层,并将网络计算机间的移动信息任务划分为七个更小的、更易管理的任务组。各个任务或任务组被分配到 ISO 参考模型各层。各层相对独立(self-contained),从而使得分配到各层的任务能够独立实现。这样当其中一层提供的某解决方案更新时,它不会影响其它层。
ISO 定义了基于 OSI 模型的 internet 网络通信协议组,基本上由欧洲国家提出。
主要协议
应用层(Application)
ACSE:关联控制服务元素 (ACSE:Association Control Service Element)
CMIP:通用管理信息协议 (CMIP:Common Management Information Protocol)
CMIS:通用管理信息服务 (CMIS:Common Management Information Service)
CMOT:TCP/IP 上的 CMIP (CMOT:CMIP over TCP/IP)
FTAM:文件传输访问和管理 (FTAM:File Transfer Access and Management)
ROSE:远程操作服务元素 (ROSE:Remote Operation Service Element)
RTSE:可靠传输服务元素协议 (RTSE:Reliable Transfer Service Element Protocol)
VTP:ISO虚拟终端协议 (VTP:ISO Virtual Terminal Protocol ISO)
X.400:信息处理服务协议 (X.400:Message Handling Service Protocols)
X.500:目录访问服务协议 (X.500:Directory Access Service Protocol - DAP)
表示层(Presentation Layer)
ASN.1: 抽象语法标记 (ASN.1:Abstract Syntax Notation One)
ISO-PP:ISO表示层协议 (ISO-PP:OSI Presentation Layer Protocol)
会话层(Session Layer)
ISO-SP:ISO会话层协议 (ISO-SP:OSI Session Layer Protocol)
传输层 (Transport Layer)
ISO-TP:OSI传输层协议 - TP0、TP1、TP2、TP3、TP4 (ISO-TP:OSI Transport Protocols - TP0、TP1、TP2、TP3、TP4)
网络层 (Network Layer)
CONP:面向连接网络协议 (CONP:Connection-Oriented Network Protocol)
ES-IS:终端系统和中间系统路由交换协议 (ES-IS:End System to Intermediate System Routing Exchange protocol)
IDRP:域间路由选择协议 (IDRP:Inter-Domain Routing Protocol)
IS-IS:中间系统到中间系统协议 (IS-IS:Intermediate System to Intermediate System)
ISO-IP CLNP:无连接网络协议 (ISO-IP CLNP:Connectionless Network Protocol)
数据链路层 (Data Link)
HDLC:高级数据链路控制协议 (HDLC:High Level Data Link Control protocol)
LAPB:平衡链路访问过程 (LAPB:Link Access Procedure Balanced for X.25平衡链路访问过程)
28 张图详解网络基础知识:OSI、TCP/IP 参考模型(含动态图)
目录
1、网络协议
其实协议在我们生活中也能找到相应的影子。
举个例子,有 2 个男生准备追求同一个妹子,妹子来自河南,讲河南话,还会点普通话;一个男生来自胡建,讲闽南语,也会点普通话;另一个男生来自广东,只讲粤语;
协议一致,沟通自如
语言不通,无法沟通
你们猜猜?最后谁牵手成功了?答案肯定是来自胡建的那位,双方可以通过 普通话 进行沟通,表达内容都能理解。而来自广东的帅哥只会讲粤语,不会普通话,妹子表示听不懂,就无法进行沟通下了。
每个人的成长环境不同,所讲的语言、认知、理解能力也就不同。为了使来自五湖四海的朋友能沟通自如,就需要大家协商,认识某一个语言或规则,彼此能互相理解,这个语言就是普通话。
通过这个例子,大家可以这样理解:
把普通话比作“协议”、把聊天比作“通信”,把说话的内容比作“数据”。
相信这样类比,大家就知道,协议是什么了?
简单地说,就是程序员指定一些标准,使不同的通信设备能彼此正确理解、正确解析通信的内容。我们都知道计算机世界里是二进制,要么 1,要么 0,那为啥可以表达丰富多彩的内容呢?
也是因为协议,不同字段,不同组合,可以解析不同意思,这就依然协议,让协议来正确处理。
例如,我们使用手机连 WiFi 来刷抖音,使用的是 802.11(WLAN)协议,通过这个协议接入网络。如果你所连的 WIFI 是不需要手动设置 IP 地址,是通过自动获取的,就使用到了 DHCP 协议,这样你的手机算上接入了 局域网, 如果你局域网内有台 NAS 服务器,存放了某些不可描述的视频资源,你就可以访问观看了,但这时你可能无法访问互联网资源,例如,你还想刷会抖音,看看妹子扭一扭,结果出现如下画面:
出现这种画面,说明无法使用 互联网, 可能是无线路由器没有设置好相关协议,比如: NAT、PPPoE 协议(上网账号或密码设置错误了),只有设置正确了,就可以通过运营商(ISP)提供的线路把局域网接入到互联网中,实现手机可以访问互联网上的资源(服务器)。玩微信撩妹子、刷抖音看妹子。
网络协议示意图
延伸阅读
1、局域网:最显著的特点就是范围有限,行政可控的区域可以是一所高校、一个餐厅、一个园区、一栋办公楼或一个家庭的私有网络。
2、城域网:原本是介意局域网和广域网之间,实际工作中很少再刻意去区分城域网和广域网了,所以这边不再介绍。
3、广域网:简单说就是负责把多个局域网连接起来,它的传输距离长距离传输,广域网的搭建一般是由运营商来。
4、互联网:把全世界上提供资源共享的 IT 设备所在网络连接起来,接入了互联网就可以随时随地访问这些资源了。
5、物联网:把所有具有联网功能的物体都接入互联网就形成了物联网。如空调联网,就可以远程控制空调; 汽车 联网,就可以远程获取行程数据。
总结一下吧!我们可以把电脑、手机等 IT 设备比喻做来自五湖四海的人们,大家都通过多种语言(网络协议)实现沟通(通信)。所有人要一起交流,就用普通话,大家都能理解。所有胡建人在一起,就用闽南语进行沟通,彼此也能理解。这么的方言,就好比计算机网络世界里也有这么多协议,只是不同协议用在不同地方。
好奇的同学,可能就会问,那网络协议是由谁来规定呢?这就需要提到一个组织,ISO。这个组织制定了一个国际标准 ,叫做 OSI 参考模型,如下,很多厂商都会参考这个制定网络协议。
OSI 参考模型图
2、OSI 参考模型
既然是模型,就好比模范一样,大家都要向它学习,以它为原型,展开学习研究。前面我们也提到了一些协议,这么多协议如果不进行归纳,分层,大家学习起来是不是感觉很凌乱?
所以 OSI 参考模型就是将这样复杂的协议整理并进行分层,分为易于理解的 7 层,并定义每一层的 服务 内容,协议的具体内容是 规则 。上下层之间通过 接口 进行交互,同一层之间通过 协议 进行交互。相信很多网络工程师在今后工作中遇到问题,讨论协议问题还会用到这个模型展开讨论。所以说,对于计算机网络初学者来说,学习了解 OSI 参考模型就是通往成功的第一步。
OSI 参考模型分层功能
7.应用层
为应用程序提供服务并规定应用程序中通信相关的细节,OSI 的最高层。包括文件传输、Email、远程登录等协议。程序员接触这一层比较多。
应用层示例图
6.表示层
主要负责数据格式的转换,为上下层能够处理的格式。如编码、加密、解密等。
表示层示例图
5.会话层
即负责建立、管理和终止通信连接(数据流动的逻辑通路),数据分片、重组等传输的管理。
会话层示例图
4.传输层
保证可靠传输,不需要再路由器上处理,只需再通信双方节点上进行处理,如处理差错控制和流量控制。
传输层示例图
3.网络层
主要负责寻址和路由选择,将数据包传输到目的地。
网络层示例图
2.数据链路层
负责物理层面上互连、节点之间的通信传输,将0 、 1 序列比特流划分为具有意义的数据帧传输给对端。这一层有点类似网络层,网络层也是基于目的地址来传输,不同是:网络层是将数据包负责在整个网络转发,而数据链路层仅是在网段内转发,所以大家抓包会发现,源目 MAC 地址每经过一个二层网段,都会变化。
数据链路层示例图
1.物理层
负责 0、1 比特流(0、1 序列)与电压高低电平、光的闪灭之间的互相转换,为数据链路层提供物理连接。
物理层示例图
OSI 为啥最后没有得到运用呢?其实最主要的原因,是 OSI 模型出现的比 tcp/ip 出现的时间晚,在 OSI 开始使用前,TCP/IP 已经被广泛的应用了。如果要换成 OSI 模型也不太现实。其次是 OSI 是专家们讨论,最后形成的,由于没有实践,导致该协议实现起来很复杂,很多厂商不愿意用 OSI,与此相比,TCP/IP 协议比较简单,实现起来也比较容易,它是从公司中产生的,更符合市场的要求。综合各种因素,最终 OSI 没有被广泛的应用。
下面我们来看看 TCP/IP 与 OSI 分层之间的对应关系及相应的协议:
4.应用层
从上图,可以知道 TCP/IP 四层模型,把应用层、表示层、会话层集成再一起了,该层的协议有:HTTP 、 POP3 、 TELNET 、 SSH 、 FTP 、 SNMP 等。
目前,大部分基于 TCP/IP 的应用都是 客户端/服务端 架构。一般我们把提供资源服务的那一侧叫服务端, 发起访问服务资源的这一侧叫客户端。
应用层
3.传输层
主要职责就是负责两端节点间的应用程序互相通信,每个节点上可能有很多应用程序,例如,登录了微信,又打开了网页,又打开迅雷看看,那数据到达后怎么正确传送到相应的应用程序呢?那就需要 端口号 来正确识别了。传输层中最为常见的两个协议分别是传输控制协议 TCP (Transmission Control Protocol)和用户数据报协议 UDP (User Datagram Protocol)
面向连接 顾名思义,就是建立连接,什么时候建立连接呢?就是在通信之前需要先建立一条逻辑的通信链路。就跟我们平时打电话一样,得先拨通,通了之后即链路建立好了,这条链路只有你和对方可以在这条链路传播说话内容。挂电话后,这条链路也就断开了。
面向无连接 无连接,即通信之前不需要建立连接,直接发送即可。跟我们以前写信很像,不需要管对方在不在?直接写信寄过去就可以了。
面向连接传输
面向无连 接传输
2.网络层
主要职责就是将数据包从源地址发送到目的地址。
在网络传输中,每个节点会根据数据的 IP 地址信息,来判断该数据包应该由哪个接口(网卡)发送出去。各个地址会参考一个发出接口列表, MAC 寻址中所参考的这张表叫做 MAC 地址转发表 ,而 IP 寻址中所参考的叫做 路由表 。MAC 地址转发表根据自学自动生成。路由控制表则根据路由协议自动生成。MAC 地址转发表中所记录的是实际的 MAC 地址本身,而路由表中记录的 IP 地址则是集中了之后的网络号(即网络号与子网掩码)。
1.网络接口层
在 TCP/IP 把物理层和数据链路层集成为 网络接口层 。主要任务是将上层的数据封装成帧发送到网络上,数据帧通过网络到达对端,对端收到后对数据帧解封,并检查帧中包含的 MAC 地址。如果该地址就是本机的 MAC 地址或者是广播地址,则上传到网络层,否则丢弃该帧。
封装与解封装
所谓的封装,其实就跟你寄快递的时候,给物品加上纸盒包装起来或者快件到站点,快递员贴一层标签的过程。在网络上,就是上层的数据往下送的时候,下层会添加头部,不过,只有在二层,不仅会加上头部,还会在上层数据尾部添加 FCS。
封装
所谓解封装,就如同你收到快件一样,一层一层地拆外包装,直到看到快件。网络也是,一层一层地拆掉头部,往上层传送,直到看到数据内容。
解封装
我们把应用层的数据封装传输层头部后的报文,称为 段 ;
把段封装网络层头部后的报文,称为 包 ;
把包封装以太网头部和帧尾,称为 帧 。