精华内容
下载资源
问答
  • 什么是SSL协议? SSL协议是一种安全传输协议,SSL是SecureSocketLayer的缩写,即安全套接层协议。该协议最初由Netscape企业发展而来,目前已经成为互联网上用来鉴别网站和网页浏览者的身份,以及在浏览器使用者及...

    转载自品略图书馆  http://www.pinlue.com/article/2020/03/2322/5910049346926.html

     

    什么是SSL协议?

    SSL协议是一种安全传输协议,SSL是SecureSocketLayer的缩写,即安全套接层协议。该协议最初由Netscape企业发展而来,目前已经成为互联网上用来鉴别网站和网页浏览者的身份,以及在浏览器使用者及网页服务器之间进行加密通讯的全球化标准协议。由于SSL技术已建立到了所有主要的浏览器和WEB服务器程序当中,因此,仅需安装数字证书,或服务器证书就可以激活服务器功能了。

    SSL协议能够对信用卡和个人信息提供较安全的保护。SSL是对计算机之间整个会话进行加密的协议。在SSL中,采用了公开密钥和私有密钥两种加密方法。

    SSL协议的优势在于它是应用层协议确立无关的。高层的应用协议如HTTP、FTP、Telnet等能透明地建立于SSL协议之上。其在应用层协议通信之前就已经完成加密算法、通信密钥的协商以及服务器认证工作。在此之后应用层协议所传送的数据都会被加密,从而保证我们在互联网上通信的安全。

    SSL协议提供的安全服务有:

    1)认证用户和服务器,确保数据发送到正确的客户机和服务器;

    2)加密数据以防止数据中途被窃取;

    3)维护数据的完整性,确保数据在传输过程中不被改变。

    SSL的主要目的是在两个通信应用程序之间提供私密信和可靠性。这个过程通过3个元素来完成:

    1、握手协议。

    握手协议负责协商被用于客户机和服务器之间会话的加密参数。当一个SSL客户机和服务器第一次开始通信时,它们在一个协议版本上达成一致,选择加密算法,选择相互认证,并使用公钥技术来生成共享密钥。

    2、记录协议。

    记录协议用于交换应用层数据。应用程序消息被分割成可管理的数据块,还可以压缩,并应用一个MAC(消息认证代码);然后结果被加密并传输。接受方接受数据并对它解密,校验MAC,解压缩并重新组合它,并把结果提交给应用程序协议。

    3、警告协议。这个协议用于指示在什么时候发生了错误或两个主机之间的会话在什么时候终止。

    下面我们来看一个使用WEB客户机和服务器的范例。WEB客户机通过连接到一个支持SSL的服务器,启动一次SSL会话。支持SSL的典型WEB服务器在一个与标准HTTP请求(默认为端口80)不同的端口(默认为443)上接受SSL连接请求。当客户机连接到这个端口上时,它将启动一次建立SSL会话的握手。当握手完成之后,通信内容被加密,并且执行消息完整性检查,知道SSL会话过期。SSL创建一个会话,在此期间,握手必须只发生过一次。当SSL会话过程中出现了问题或端口设置出了问题,就会造成无法使用SSL连接现象。

    SSL握手过程步骤:

    步骤1:SSL客户机连接到SSL服务器,并要求服务器验证它自身的身份。

    步骤2:服务器通过发送它的数字证书证明其身份。这个交换还可以包括整个证书链,直到某个根证书权威机构(CA)。通过检查有效日期并确认证书包含有可信任CA的数字签名,来验证证书。

    步骤3:服务器发出一个请求,对客户端的证书进行验证。但是,因为缺乏公钥体系结构,当今的大多数服务器不进行客户端认证。

    步骤4:协商用于加密的消息加密算法和用于完整性检查的哈希函数。通常由客户机提供它支持的所有算法列表,然后由服务器选择最安全的加密算法。

    步骤5:客户机和服务器通过下列步骤生成会话密钥:

    a. 客户机生成一个随机数,并使用服务器的公钥(从服务器的证书中获得)对它加密,然后发送到服务器上

    b. 服务器用更加随机的数据(从客户机的密钥可用时则使用客户机密钥;否则以明文方式发送数据)响应。

    c. 使用哈希函数,从随机数据生成安全密钥。

    SSL协议的优点是它提供了连接安全,具有3个基本属性:

    l 连接是私有的。在初始握手定义了一个密钥之后,将使用加密算法。对于数据加密使用了对称加密(例如DES和RC4)。

    l 可以使用非对称加密或公钥加密(例如RSA和DSS)来验证对等实体的身份。

    l 连接时可靠的。消息传输使用一个密钥的MAC,包括了消息完整性检查。其中使用了安全哈希函数(例如SHA和MD5)来进行MAC计算。

    对于SSL的接受程度仅仅限于HTTP内。它在其他协议中曾被表明可以使用,但还没有被广泛应用。

    展开全文
  • 互联网协议入门

    万次阅读 2019-04-17 08:08:59
    我们每天使用互联网,你是否想过,它是如何...互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite)。它们对电脑如何连接和组网,做出了详尽的规定。理解了这些协议,就理解了互联网的原理。...

    我们每天使用互联网,你是否想过,它是如何实现的?

    全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗?

    互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite)。它们对电脑如何连接和组网,做出了详尽的规定。理解了这些协议,就理解了互联网的原理。

    下面就是我的学习笔记。因为这些协议实在太复杂、太庞大,我想整理一个简洁的框架,帮助自己从总体上把握它们。为了保证简单易懂,我做了大量的简化,有些地方并不全面和精确,但是应该能够说清楚互联网的原理。

     

    一、概述

    1.1 五层模型

    互联网的实现,分成好几层。每一层都有自己的功能,就像建筑物一样,每一层都靠下一层支持。

    用户接触到的,只是最上面的一层,根本没有感觉到下面的层。要理解互联网,必须从最下层开始,自下而上理解每一层的功能。

    如何分层有不同的模型,有的模型分七层,有的分四层。我觉得,把互联网分成五层,比较容易解释。

    如上图所示,最底下的一层叫做"实体层"(Physical Layer),最上面的一层叫做"应用层"(Application Layer),中间的三层(自下而上)分别是"链接层"(Link Layer)、"网络层"(Network Layer)和"传输层"(Transport Layer)。越下面的层,越靠近硬件;越上面的层,越靠近用户。

    它们叫什么名字,其实并不重要。只需要知道,互联网分成若干层就可以了。

    1.2 层与协议

    每一层都是为了完成一种功能。为了实现这些功能,就需要大家都遵守共同的规则。

    大家都遵守的规则,就叫做"协议"(protocol)。

    互联网的每一层,都定义了很多协议。这些协议的总称,就叫做"互联网协议"(Internet Protocol Suite)。它们是互联网的核心,下面介绍每一层的功能,主要就是介绍每一层的主要协议。

    二、实体层

    我们从最底下的一层开始。

    电脑要组网,第一件事要干什么?当然是先把电脑连起来,可以用光缆、电缆、双绞线、无线电波等方式。

    这就叫做"实体层",它就是把电脑连接起来的物理手段。它主要规定了网络的一些电气特性,作用是负责传送0和1的电信号。

    三、链接层

    3.1 定义

    单纯的0和1没有任何意义,必须规定解读方式:多少个电信号算一组?每个信号位有何意义?

    这就是"链接层"的功能,它在"实体层"的上方,确定了0和1的分组方式。

    3.2 以太网协议

    早期的时候,每家公司都有自己的电信号分组方式。逐渐地,一种叫做"以太网"(Ethernet)的协议,占据了主导地位。

    以太网规定,一组电信号构成一个数据包,叫做"帧"(Frame)。每一帧分成两个部分:标头(Head)和数据(Data)。

    "标头"包含数据包的一些说明项,比如发送者、接受者、数据类型等等;"数据"则是数据包的具体内容。

    "标头"的长度,固定为18字节。"数据"的长度,最短为46字节,最长为1500字节。因此,整个"帧"最短为64字节,最长为1518字节。如果数据很长,就必须分割成多个帧进行发送。

    3.3 MAC地址

    上面提到,以太网数据包的"标头",包含了发送者和接受者的信息。那么,发送者和接受者是如何标识呢?

    以太网规定,连入网络的所有设备,都必须具有"网卡"接口。数据包必须是从一块网卡,传送到另一块网卡。网卡的地址,就是数据包的发送地址和接收地址,这叫做MAC地址。

    每块网卡出厂的时候,都有一个全世界独一无二的MAC地址,长度是48个二进制位,通常用12个十六进制数表示。

    前6个十六进制数是厂商编号,后6个是该厂商的网卡流水号。有了MAC地址,就可以定位网卡和数据包的路径了。

    3.4 广播

    定义地址只是第一步,后面还有更多的步骤。

    首先,一块网卡怎么会知道另一块网卡的MAC地址?

    回答是有一种ARP协议,可以解决这个问题。这个留到后面介绍,这里只需要知道,以太网数据包必须知道接收方的MAC地址,然后才能发送。

    其次,就算有了MAC地址,系统怎样才能把数据包准确送到接收方?

    回答是以太网采用了一种很"原始"的方式,它不是把数据包准确送到接收方,而是向本网络内所有计算机发送,让每台计算机自己判断,是否为接收方。

    上图中,1号计算机向2号计算机发送一个数据包,同一个子网络的3号、4号、5号计算机都会收到这个包。它们读取这个包的"标头",找到接收方的MAC地址,然后与自身的MAC地址相比较,如果两者相同,就接受这个包,做进一步处理,否则就丢弃这个包。这种发送方式就叫做"广播"(broadcasting)。

    有了数据包的定义、网卡的MAC地址、广播的发送方式,"链接层"就可以在多台计算机之间传送数据了。

    四、网络层

    4.1 网络层的由来

    以太网协议,依靠MAC地址发送数据。理论上,单单依靠MAC地址,上海的网卡就可以找到洛杉矶的网卡了,技术上是可以实现的。

    但是,这样做有一个重大的缺点。以太网采用广播方式发送数据包,所有成员人手一"包",不仅效率低,而且局限在发送者所在的子网络。也就是说,如果两台计算机不在同一个子网络,广播是传不过去的。这种设计是合理的,否则互联网上每一台计算机都会收到所有包,那会引起灾难。

    互联网是无数子网络共同组成的一个巨型网络,很像想象上海和洛杉矶的电脑会在同一个子网络,这几乎是不可能的。

    因此,必须找到一种方法,能够区分哪些MAC地址属于同一个子网络,哪些不是。如果是同一个子网络,就采用广播方式发送,否则就采用"路由"方式发送。("路由"的意思,就是指如何向不同的子网络分发数据包,这是一个很大的主题,本文不涉及。)遗憾的是,MAC地址本身无法做到这一点。它只与厂商有关,与所处网络无关。

    这就导致了"网络层"的诞生。它的作用是引进一套新的地址,使得我们能够区分不同的计算机是否属于同一个子网络。这套地址就叫做"网络地址",简称"网址"。

    于是,"网络层"出现以后,每台计算机有了两种地址,一种是MAC地址,另一种是网络地址。两种地址之间没有任何联系,MAC地址是绑定在网卡上的,网络地址则是管理员分配的,它们只是随机组合在一起。

    网络地址帮助我们确定计算机所在的子网络,MAC地址则将数据包送到该子网络中的目标网卡。因此,从逻辑上可以推断,必定是先处理网络地址,然后再处理MAC地址。

    4.2 IP协议

    规定网络地址的协议,叫做IP协议。它所定义的地址,就被称为IP地址。

    目前,广泛采用的是IP协议第四版,简称IPv4。这个版本规定,网络地址由32个二进制位组成。

    习惯上,我们用分成四段的十进制数表示IP地址,从0.0.0.0一直到255.255.255.255。

    互联网上的每一台计算机,都会分配到一个IP地址。这个地址分成两个部分,前一部分代表网络,后一部分代表主机。比如,IP地址172.16.254.1,这是一个32位的地址,假定它的网络部分是前24位(172.16.254),那么主机部分就是后8位(最后的那个1)。处于同一个子网络的电脑,它们IP地址的网络部分必定是相同的,也就是说172.16.254.2应该与172.16.254.1处在同一个子网络。

    但是,问题在于单单从IP地址,我们无法判断网络部分。还是以172.16.254.1为例,它的网络部分,到底是前24位,还是前16位,甚至前28位,从IP地址上是看不出来的。

    那么,怎样才能从IP地址,判断两台计算机是否属于同一个子网络呢?这就要用到另一个参数"子网掩码"(subnet mask)。

    所谓"子网掩码",就是表示子网络特征的一个参数。它在形式上等同于IP地址,也是一个32位二进制数字,它的网络部分全部为1,主机部分全部为0。比如,IP地址172.16.254.1,如果已知网络部分是前24位,主机部分是后8位,那么子网络掩码就是11111111.11111111.11111111.00000000,写成十进制就是255.255.255.0。

    知道"子网掩码",我们就能判断,任意两个IP地址是否处在同一个子网络。方法是将两个IP地址与子网掩码分别进行AND运算(两个数位都为1,运算结果为1,否则为0),然后比较结果是否相同,如果是的话,就表明它们在同一个子网络中,否则就不是。

    比如,已知IP地址172.16.254.1和172.16.254.233的子网掩码都是255.255.255.0,请问它们是否在同一个子网络?两者与子网掩码分别进行AND运算,结果都是172.16.254.0,因此它们在同一个子网络。

    总结一下,IP协议的作用主要有两个,一个是为每一台计算机分配IP地址,另一个是确定哪些地址在同一个子网络。

    4.3 IP数据包

    根据IP协议发送的数据,就叫做IP数据包。不难想象,其中必定包括IP地址信息。

    但是前面说过,以太网数据包只包含MAC地址,并没有IP地址的栏位。那么是否需要修改数据定义,再添加一个栏位呢?

    回答是不需要,我们可以把IP数据包直接放进以太网数据包的"数据"部分,因此完全不用修改以太网的规格。这就是互联网分层结构的好处:上层的变动完全不涉及下层的结构。

    具体来说,IP数据包也分为"标头"和"数据"两个部分。

    "标头"部分主要包括版本、长度、IP地址等信息,"数据"部分则是IP数据包的具体内容。它放进以太网数据包后,以太网数据包就变成了下面这样。

    IP数据包的"标头"部分的长度为20到60字节,整个数据包的总长度最大为65,535字节。因此,理论上,一个IP数据包的"数据"部分,最长为65,515字节。前面说过,以太网数据包的"数据"部分,最长只有1500字节。因此,如果IP数据包超过了1500字节,它就需要分割成几个以太网数据包,分开发送了。

    4.4 ARP协议

    关于"网络层",还有最后一点需要说明。

    因为IP数据包是放在以太网数据包里发送的,所以我们必须同时知道两个地址,一个是对方的MAC地址,另一个是对方的IP地址。通常情况下,对方的IP地址是已知的(后文会解释),但是我们不知道它的MAC地址。

    所以,我们需要一种机制,能够从IP地址得到MAC地址。

    这里又可以分成两种情况。第一种情况,如果两台主机不在同一个子网络,那么事实上没有办法得到对方的MAC地址,只能把数据包传送到两个子网络连接处的"网关"(gateway),让网关去处理。

    第二种情况,如果两台主机在同一个子网络,那么我们可以用ARP协议,得到对方的MAC地址。ARP协议也是发出一个数据包(包含在以太网数据包中),其中包含它所要查询主机的IP地址,在对方的MAC地址这一栏,填的是FF:FF:FF:FF:FF:FF,表示这是一个"广播"地址。它所在子网络的每一台主机,都会收到这个数据包,从中取出IP地址,与自身的IP地址进行比较。如果两者相同,都做出回复,向对方报告自己的MAC地址,否则就丢弃这个包。

    总之,有了ARP协议之后,我们就可以得到同一个子网络内的主机MAC地址,可以把数据包发送到任意一台主机之上了。

    五、传输层

    5.1 传输层的由来

    有了MAC地址和IP地址,我们已经可以在互联网上任意两台主机上建立通信。

    接下来的问题是,同一台主机上有许多程序都需要用到网络,比如,你一边浏览网页,一边与朋友在线聊天。当一个数据包从互联网上发来的时候,你怎么知道,它是表示网页的内容,还是表示在线聊天的内容?

    也就是说,我们还需要一个参数,表示这个数据包到底供哪个程序(进程)使用。这个参数就叫做"端口"(port),它其实是每一个使用网卡的程序的编号。每个数据包都发到主机的特定端口,所以不同的程序就能取到自己所需要的数据。

    "端口"是0到65535之间的一个整数,正好16个二进制位。0到1023的端口被系统占用,用户只能选用大于1023的端口。不管是浏览网页还是在线聊天,应用程序会随机选用一个端口,然后与服务器的相应端口联系。

    "传输层"的功能,就是建立"端口到端口"的通信。相比之下,"网络层"的功能是建立"主机到主机"的通信。只要确定主机和端口,我们就能实现程序之间的交流。因此,Unix系统就把主机+端口,叫做"套接字"(socket)。有了它,就可以进行网络应用程序开发了。

    5.2 UDP协议

    现在,我们必须在数据包中加入端口信息,这就需要新的协议。最简单的实现叫做UDP协议,它的格式几乎就是在数据前面,加上端口号。

    UDP数据包,也是由"标头"和"数据"两部分组成。

    "标头"部分主要定义了发出端口和接收端口,"数据"部分就是具体的内容。然后,把整个UDP数据包放入IP数据包的"数据"部分,而前面说过,IP数据包又是放在以太网数据包之中的,所以整个以太网数据包现在变成了下面这样:

    UDP数据包非常简单,"标头"部分一共只有8个字节,总长度不超过65,535字节,正好放进一个IP数据包。

    5.3 TCP协议

    UDP协议的优点是比较简单,容易实现,但是缺点是可靠性较差,一旦数据包发出,无法知道对方是否收到。

    为了解决这个问题,提高网络可靠性,TCP协议就诞生了。这个协议非常复杂,但可以近似认为,它就是有确认机制的UDP协议,每发出一个数据包都要求确认。如果有一个数据包遗失,就收不到确认,发出方就知道有必要重发这个数据包了。

    因此,TCP协议能够确保数据不会遗失。它的缺点是过程复杂、实现困难、消耗较多的资源。

    TCP数据包和UDP数据包一样,都是内嵌在IP数据包的"数据"部分。TCP数据包没有长度限制,理论上可以无限长,但是为了保证网络的效率,通常TCP数据包的长度不会超过IP数据包的长度,以确保单个TCP数据包不必再分割。

    六、应用层

    应用程序收到"传输层"的数据,接下来就要进行解读。由于互联网是开放架构,数据来源五花八门,必须事先规定好格式,否则根本无法解读。

    "应用层"的作用,就是规定应用程序的数据格式。

    举例来说,TCP协议可以为各种各样的程序传递数据,比如Email、WWW、FTP等等。那么,必须有不同协议规定电子邮件、网页、FTP数据的格式,这些应用程序协议就构成了"应用层"。

    这是最高的一层,直接面对用户。它的数据就放在TCP数据包的"数据"部分。因此,现在的以太网的数据包就变成下面这样。

    至此,整个互联网的五层结构,自下而上全部讲完了。这是从系统的角度,解释互联网是如何构成的。下一篇,我反过来,从用户的角度,自上而下看看这个结构是如何发挥作用,完成一次网络数据交换的。

    展开全文
  • 互联网控制消息协议(英语:InternetControlMessageProtocol,缩写:ICMP)是互联网协议族的核心协议之一。它用于TCP/IP网络中发送控制消息,提供可能发生在通信环境中的各种问题反馈,通过这些信息,使管理者可以对...

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。

    互联网控制消息协议(英语:Internet Control Message Protocol,缩写:ICMP)是互联网协议族的核心协议之一。

    它用于TCP/IP网络中发送控制消息,提供可能发生在通信环境中的各种问题反馈,通过这些信息,使管理者可以对所发生的问题作出诊断,然后采取适当的措施解决。

    ICMP 依靠IP来完成它的任务,它是IP的主要部分。它与传输协议(如TCPUDP)显著不同:它一般不用于在两点间传输数据。它通常不由网络程序直接使用,除了pingtraceroute这两个特别的例子。 IPv4中的ICMP被称作ICMPv4,IPv6中的ICMP则被称作ICMPv6

    技术细节

    ICMP是在RFC 792中定义的互联网协议族之一。通常用于返回的错误信息或分析路由。ICMP错误消息总是包括了源数据并返回给发送者。 ICMP错误消息的例子之一是TTL值过期。每个路由器在转发数据报的时候都会把IP包头中的TTL值减1。如果TTL值为0,“TTL在传输中过期”的消息将会回报给源地址。 每个ICMP消息都是直接封装在一个IP数据包中的,因此,UDP一样,ICMP是不可靠的。

    虽然ICMP是包含在IP数据包中的,但是对ICMP消息通常会特殊处理,会和一般IP数据包的处理不同,而不是作为IP的一个子协议来处理。在很多时候,需要去查看ICMP消息的内容,然后发送适当的错误消息到那个原来产生IP数据包的程序,即那个导致ICMP消息被发送的IP数据包。

    很多常用的工具是基于ICMP消息的。traceroute是通过发送包含有特殊的TTL的包,然后接收ICMP超时消息和目标不可达消息来实现的。ping则是用ICMP的"Echo request"(类别代码:8)和"Echo reply"(类别代码:0)消息来实现的。

    ICMP报文结构

    报头

    ICMP报头从IP报头的第160位开始(IP首部20字节)(除非使用了IP报头的可选部分)。

    Bits160-167168-175176-183184-191
    160TypeCode校验码(checksum)
    192ID序号(sequence)
    • Type - ICMP的类型,标识生成的错误报文;
    • Code - 进一步划分ICMP的类型,该字段用来查找产生错误的原因.;例如,ICMP的目标不可达类型可以把这个位设为1至15等来表示不同的意思。
    • Checksum - 校验码部分,这个字段包含有从ICMP报头和数据部分计算得来的,用于检查错误的数据,其中此校验码字段的值视为0。
    • ID - 这个字段包含了ID值,在Echo Reply类型的消息中要返回这个字段。
    • Sequence - 这个字段包含一个序号,同样要在Echo Reply类型的消息中要返回这个字段。

     

    填充数据

    填充的数据紧接在ICMP报头的后面(以8位为一组):

    • Linux的"ping"工具填充的ICMP除了8个8位组的报头以外,默认情况下还另外填充数据使得总大小为64字节。
    • Windows的"ping.exe"填充的ICMP除了8个8位组的报头以外,默认情况下还另外填充数据使得总大小为40字节。

     

    报文类型

    类型代码状态描述查询差错
    0 - Echo Reply0 echo响应 (被程序ping使用) 
    1 and 2 未分配保留 
    3 - 目的不可达0 目标网络不可达 
    1 目标主机不可达 
    2 目标协议不可达 
    3 目标端口不可达 
    4 要求分段并设置DF flag标志 
    5 源路由失败 
    6 未知的目标网络 
    7 未知的目标主机 
    8 源主机隔离(作废不用) 
    9 禁止访问的网络 
    10 禁止访问的主机 
    11 对特定的TOS 网络不可达 
    12 对特定的TOS 主机不可达 
    13 由于过滤 网络流量被禁止 
    14 主机越权 
    15 优先权终止生效 
    4 - 源端关闭0弃用源端关闭(拥塞控制) 
    5 - 重定向0 重定向网络 
    1 重定向主机 
    2 基于TOS 的网络重定向 
    3 基于TOS 的主机重定向 
    6 弃用备用主机地址  
    7 未分配保留  
    8 - 请求回显0 Echo请求 
    9 - 路由器通告0 路由通告 
    10 - 路由器请求0 路由器的发现/选择/请求 
    11 - ICMP 超时0 TTL 超时 
    1 分片重组超时 
    12 - 参数问题:错误IP头部0 IP 报首部参数错误 
    1 丢失必要选项 
    2 不支持的长度  
    13 - 时间戳请求0 时间戳请求 
    14 - 时间戳应答0 时间戳应答 
    15 - 信息请求0弃用信息请求 
    16 - 信息应答0弃用信息应答 
    17 - 地址掩码请求0弃用地址掩码请求 
    18 - 地址掩码应答0弃用地址掩码应答 
    19 保留因安全原因保留  
    20 至 29 保留Reserved for robustness experiment  
    30 - Traceroute0弃用信息请求  
    31 弃用数据报转换出错  
    32 弃用手机网络重定向  
    33 弃用Where-Are-You(originally meant for IPv6  
    34 弃用Here-I-Am(originally meant for IPv6)  
    35 弃用Mobile Registration Request  
    36 弃用Mobile Registration Reply  
    37 弃用Domain Name Request  
    38 弃用Domain Name Reply  
    39 弃用SKIP Algorithm Discovery Protocol, Simple Key-Management for Internet Protocol  
    40  Photuris, Security failures  
    41 实验性的ICMP for experimental mobility protocols such as Seamoby [RFC4065]  
    42 到 255 保留保留  
    235 实验性的RFC3692( RFC 4727  
    254 实验性的RFC3692( RFC 4727  
    255 保留保留

     

     

     

    特别说明:以上内容大部分收集、整理自**百科。

     

    展开全文
  • 互联网协议基础知识

    千次阅读 2018-12-20 17:13:45
    互联网的本质就是一系列的网络协议,总称为“互联网协议”(Internet Protocol Suite)。 互联网协议的功能:定义计算机如何接入internet,以及接入internet的计算机通信的标准。 2、互联网分层模型 互联网协议...

    一、网络通信原理

    引用自:
    阮一峰的网络日志----互联网协议入门(一)
    阮一峰的网络日志----互联网协议入门(二)
    OSI七层协议大白话解读
    网络七层协议解释
    漫谈网络通信——从OSI网络模型到TCP/IP协议族

    《TCP/IP详解 卷1:协议》读书笔记
    【老生常谈的】互联网协议
    TCP/IP协议(一)网络基础知识

    1、互联网协议

    互联网的本质就是一系列的网络协议,总称为“互联网协议”(Internet Protocol Suite)。

    互联网协议的功能:定义计算机如何接入internet,以及接入internet的计算机通信的标准。

    2、互联网分层模型

    互联网协议按照功能不同分为osi七层或tcp/ip五层或tcp/ip四层


    在这里插入图片描述

    每层运行常见物理设备


    在这里插入图片描述
    在这里插入图片描述

    2.1 物理层(Physical Layer)

    物理层主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。

    它的主要作用是传输数据比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后在转化为1、0,也就是我们常说的数模转换与模数转换)。这一层的数据叫做比特。

    2.2 数据链路层(Datalink Layer)

    物理层为我们提供了在两台设备之间传输0和1的可能,但是只是单纯的传输0和1是没有意义的。链路层的作用是将这些01信号序列化,转化为有意义的数据帧。

    那么链路层是怎么工作的呢?它工作过程大概可以理解为三个部分,发送什么数据?发送给谁?怎么发送?

    2.2.1 以太网协议

    首先需要有一个规则来定义这些01电信号,使得这些电信号变得有意义,形成了统一的标准(标准就是协议),即以太网协议(Ethernet)。

    Ethernet规定:
    一组电信号构成一个数据包,叫做"帧"(Frame)。每一帧分成两个部分:标头(Head)和数据(Data)。


    在这里插入图片描述

    head包含(固定18字节)

    • 发送者(源地址,6个字节)
    • 接收者(目标地址,6个字节)
    • 数据类型(6个字节)

    data包含:(最短46字节,最长1500字节)

    • 数据包的具体内容

    "标头"的长度,固定为18字节。"数据"的长度,最短为46字节,最长为1500字节。因此,整个"帧"最短为64字节,最长为1518字节。如果数据很长,就必须分割成多个帧进行发送。

    2.2.2 MAC地址

    以太网规定,连入网络的所有设备,都必须具有"网卡"接口。数据包必须是从一块网卡,传送到另一块网卡。网卡的地址,就是数据包的发送地址和接收地址,这叫做MAC地址。


    在这里插入图片描述

    每块网卡出厂的时候,都有一个全世界独一无二的MAC地址,长度是48个二进制位,通常用12个十六进制数表示。


    在这里插入图片描述

    前6个十六进制数是厂商编号,后6个是该厂商的网卡流水号。有了MAC地址,就可以通过这个地址去向目标设备发送数据。

    2.2.3 广播

    知道了目标设备的MAC地址,但是怎么才能把把消息准确的发送给目标设备呢?其实解决方法很简单,发送数据时,将向网络中所有设备都发送这个消息,然后每一台设备自己来判断数据标头中包含的MAC地址是否和自己的MAC地址一致,如果一致就接收这个消息,如果不一致就不接收。这种发送数据的方式叫做“广播”。通过“广播”的方式就可以把一条数据发送到指定设备上了。


    在这里插入图片描述

    上图中,1号计算机向2号计算机发送一个数据包,同一个子网络的3号、4号、5号计算机都会收到这个包。它们读取这个包的"标头",找到接收方的MAC地址,然后与自身的MAC地址相比较,如果两者相同,就接受这个包,做进一步处理,否则就丢弃这个包。

    有了数据包的定义、网卡的MAC地址、广播的发送方式,"链接层"就可以在多台计算机之间传送数据了。

    2.3 网络层(Network Layer)

    2.3.1 网络层的由来:

    以太网协议,依靠MAC地址发送数据。理论上,单单依靠MAC地址,上海的网卡就可以找到洛杉矶的网卡了。实际上,“广播”的方式只能在同一子网络内发送数据。也就是说,如果两台计算机不在同一个子网络,广播是传不过去的。

    因此,必须找到一种方法,能够区分哪些MAC地址属于同一个子网络,哪些不是。如果是同一个子网络,就采用广播方式发送,否则就采用"路由"方式发送。("路由"的意思,就是指如何向不同的子网络分发数据包)遗憾的是,MAC地址本身无法做到这一点。它只与厂商有关,与所处网络无关。

    这就导致了"网络层"的诞生。它的作用是引进一套新的地址,使得我们能够区分不同的计算机是否属于同一个子网络。这套地址就叫做"网络地址",简称"网址"。

    于是,"网络层"出现以后,每台计算机有了两种地址,一种是MAC地址,另一种是网络地址。两种地址之间没有任何联系,MAC地址是绑定在网卡上的,网络地址则是管理员分配的,它们只是随机组合在一起。

    网络地址帮助我们确定计算机所在的子网络,MAC地址则将数据包送到该子网络中的目标网卡。因此,从逻辑上可以推断,必定是先处理网络地址,然后再处理MAC地址。

    2.3.2 IP协议

    规定网络地址的协议,叫做IP协议。它所定义的地址,就被称为IP地址。

    目前,广泛采用的是IP协议第四版,简称IPv4。这个版本规定,网络地址由32个二进制位组成。


    在这里插入图片描述

    习惯上,我们用分成四段的十进制数表示IP地址,从0.0.0.0一直到255.255.255.255。

    互联网上的每一台计算机,都会分配到一个IP地址。这个地址分成两个部分,前一部分代表网络,后一部分代表主机。比如,IP地址172.16.254.1,这是一个32位的地址,假定它的网络部分是前24位(172.16.254),那么主机部分就是后8位(最后的那个1)。处于同一个子网络的电脑,它们IP地址的网络部分必定是相同的,也就是说172.16.254.2应该与172.16.254.1处在同一个子网络。

    但是,问题在于单单从IP地址,我们无法判断网络部分。还是以172.16.254.1为例,它的网络部分,到底是前24位,还是前16位,甚至前28位,从IP地址上是看不出来的。

    那么,怎样才能从IP地址,判断两台计算机是否属于同一个子网络呢?这就要用到另一个参数"子网掩码"(subnet mask)。

    所谓"子网掩码",就是表示子网络特征的一个参数。它在形式上等同于IP地址,也是一个32位二进制数字,它的网络部分全部为1,主机部分全部为0。比如,IP地址172.16.254.1,如果已知网络部分是前24位,主机部分是后8位,那么子网络掩码就是11111111.11111111.11111111.00000000,写成十进制就是255.255.255.0。

    知道"子网掩码",我们就能判断,任意两个IP地址是否处在同一个子网络。方法是将两个IP地址与子网掩码分别进行AND运算(两个数位都为1,运算结果为1,否则为0),然后比较结果是否相同,如果是的话,就表明它们在同一个子网络中,否则就不是。

    比如,已知IP地址172.16.254.1和172.16.254.233的子网掩码都是255.255.255.0,请问它们是否在同一个子网络?两者与子网掩码分别进行AND运算,结果都是172.16.254.0,因此它们在同一个子网络。

    总结一下,IP协议的作用主要有两个,一个是为每一台计算机分配IP地址,另一个是确定哪些地址在同一个子网络。

    2.3.3 IP数据包

    根据IP协议发送的数据,就叫做IP数据包。不难想象,其中必定包括IP地址信息。

    但是前面说过,以太网数据包只包含MAC地址,并没有IP地址的栏位。那么是否需要修改数据定义,再添加一个栏位呢?

    回答是不需要,我们可以把IP数据包直接放进以太网数据包的"数据"部分,因此完全不用修改以太网的规格。这就是互联网分层结构的好处:上层的变动完全不涉及下层的结构。

    具体来说,IP数据包也分为"标头"和"数据"两个部分。


    在这里插入图片描述

    "标头"部分主要包括版本、长度、IP地址等信息,"数据"部分则是IP数据包的具体内容。它放进以太网数据包后,以太网数据包就变成了下面这样。


    在这里插入图片描述

    IP数据包的"标头"部分的长度为20到60字节,整个数据包的总长度最大为65,535字节。因此,理论上,一个IP数据包的"数据"部分,最长为65,515字节。前面说过,以太网数据包的"数据"部分,最长只有1500字节。因此,如果IP数据包超过了1500字节,它就需要分割成几个以太网数据包,分开发送了。

    2.3.4 ARP协议

    关于"网络层",还有最后一点需要说明。

    因为IP数据包是放在以太网数据包里发送的,所以我们必须同时知道两个地址,一个是对方的MAC地址,另一个是对方的IP地址。通常情况下,对方的IP地址是已知的,但是我们不知道它的MAC地址。

    所以,我们需要一种机制,能够从IP地址得到MAC地址。

    这里又可以分成两种情况:
    第一种情况,如果两台主机在同一个子网络,那么我们可以用ARP协议,得到对方的MAC地址。ARP协议,通过“广播”的方式向子网络内所有设备发送一条数据包(包含在以太网数据包中),其中包含它所要查询主机的IP地址,在对方的MAC地址这一栏,填的是FF:FF:FF:FF:FF:FF,表示这是一个"广播"地址。它所在子网络的每一台主机,都会收到这个数据包,从中取出IP地址,与自身的IP地址进行比较。如果两者相同,就做出回复,向对方报告自己的MAC地址,否则就丢弃这个包,这样就可以通过IP地址获取到MAC地址了。

    总之,有了ARP协议之后,我们就可以得到同一个子网络内的主机MAC地址,可以把数据包发送到任意一台主机之上了。

    第二种情况,如果两台主机不在同一个子网络,那么事实上没有办法得到对方的MAC地址,只能把数据包传送到两个子网络连接处的"网关"(gateway),网关通过路由协议再将数据发送到目标设备上。(网络通过路由器进行连接,形成互联网。路由器是网关,但是网关不一定是路由器。 )


    在这里插入图片描述

    如图,主机2想向主机4发送一条数据,必须先将数据发送至网关A,由网关A通过路由协议查询到主机4处于子网络B,网关A会将数据发送给网关B,网关B再将数据发送给主机4,这样便完成了主机2到主机4之间的通讯。

    至此,我们应该清楚了,在两台设备间通讯所必须的条件,首先我们需要判断两台设备是否处在同一子网络中,若在同一子网络,就可以利用ARP协议来获取MAC地址,得到目标IP和MAC地址,就可以发送数据。若不在同一子网络,则需要获取网关的MAC地址,将数据发送到网关,让网关来转发。现在我们就可以在互联网上任意两台设备间通讯了。

    2.4 传输层 (Transport Layer)

    有了MAC地址和IP地址,我们已经可以在互联网上任意两台主机上建立通信。

    接下来的问题是,同一台主机上有许多程序都需要用到网络,比如,你一边浏览网页,一边与朋友在线聊天。当一个数据包从互联网上发来的时候,你怎么知道,它是表示网页的内容,还是表示在线聊天的内容?

    也就是说,我们还需要一个参数,表示这个数据包到底供哪个程序(进程)使用,这个参数就叫做"端口"(port)。它其实是每一个使用网卡的应用程序的编号,不同的应用程序在主机上发送或接收数据,都要通过不同的端口,以此来确定数据包是归那个应用程序所有。

    "端口"是0到65535之间的一个整数,正好16个二进制位。0到1023的端口被系统占用,用户只能选用大于1023的端口。不管是浏览网页还是在线聊天,应用程序会随机选用一个端口,然后与服务器的相应端口联系。

    "传输层"的作用,就是建立"端口到端口之间"的通信,最常用的协议是TCP、UDP协议。相比之下,“网络层"的功能是建立"主机到主机之间"的通信。只要确定主机和端口,我们就能实现程序之间的交流。因此,Unix系统就把主机+端口,叫做"套接字”(socket)。有了它,就可以进行网络应用程序开发了。

    2.4.1 UDP协议(不可靠传输)

    现在,我们必须在数据包中加入端口信息,这就需要新的协议。最简单的实现叫做UDP协议,它的格式几乎就是在数据前面,加上端口号。

    UDP数据包,也是由"标头"和"数据"两部分组成。


    在这里插入图片描述

    "标头"部分主要定义了发出端口和接收端口,"数据"部分就是具体的内容。然后,把整个UDP数据包放入IP数据包的"数据"部分,而前面说过,IP数据包又是放在以太网数据包之中的,所以整个以太网数据包现在变成了下面这样:


    在这里插入图片描述

    UDP数据包非常简单,"标头"部分一共只有8个字节,总长度不超过65,535字节,正好放进一个IP数据包。

    2.4.2 TCP协议(可靠传输)

    UDP协议的优点是比较简单,容易实现,但是缺点是可靠性较差,一旦数据包发出,无法知道对方是否收到。

    为了解决这个问题,提高网络可靠性,TCP协议就诞生了。这个协议非常复杂,但可以近似认为,它就是有确认机制的UDP协议,每发出一个数据包都要求确认。如果有一个数据包遗失,就收不到确认,发出方就知道有必要重发这个数据包了。

    因此,TCP协议能够确保数据不会遗失。它的缺点是过程复杂、实现困难、消耗较多的资源。

    TCP数据包和UDP数据包一样,都是内嵌在IP数据包的"数据"部分。TCP数据包没有长度限制,理论上可以无限长,但是为了保证网络的效率,通常TCP数据包的长度不会超过IP数据包的长度,以确保单个TCP数据包不必再分割。

    TCP三次握手和四次挥手
    TCP(Transmission Control Protocol) 传输控制协议
    TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:
    位码即tcp标志位,有6种标示:SYN(建立联机) ACK(确认) PSH(传送) FIN(结束) RST(重置) URG(紧急)
    Sequence number(顺序号码) Acknowledge number(确认号码)


    三次握手
    在这里插入图片描述

    • 第一次握手:TCP服务器进程先创建传输控制块TCB,时刻准备接受客户进程的连接请求,此时服务器就进入了LISTEN(监听)状态;TCP客户进程也是先创建传输控制块TCB,然后向服务器发出连接请求报文,这是报文首部中的同部位SYN=1,同时选择一个初始序列号 seq=x ,此时,TCP客户端进程进入了 SYN-SENT(同步已发送状态)状态。TCP规定,SYN报文段(SYN=1的报文段)不能携带数据,但需要消耗掉一个序号。

    • 第二次握手:TCP服务器收到请求报文后,如果同意连接,则发出确认报文。确认报文中应该 ACK=1,SYN=1,确认号是ack=x+1,同时也要为自己初始化一个序列号 seq=y,此时,TCP服务器进程进入了SYN-RCVD(同步收到)状态。这个报文也不能携带数据,但是同样要消耗一个序号。

    • 第三次握手:TCP客户进程收到确认后,还要向服务器给出确认。确认报文的ACK=1,ack=y+1,自己的序列号seq=x+1,此时,TCP连接建立,客户端进入ESTABLISHED(已建立连接)状态。TCP规定,ACK报文段可以携带数据,但是如果不携带数据则不消耗序号。当服务器收到客户端的确认后也进入ESTABLISHED状态,此后双方就可以开始通信了。


      四次挥手
      在这里插入图片描述

    • 第一次挥手:客户端进程发出连接释放报文,并且停止发送数据。释放数据报文首部,FIN=1,其序列号为seq=u(等于前面已经传送过来的数据的最后一个字节的序号加1),此时,客户端进入FIN-WAIT-1(终止等待1)状态。 TCP规定,FIN报文段即使不携带数据,也要消耗一个序号。

    • 第二次挥手:服务器收到连接释放报文,发出确认报文,ACK=1,ack=u+1,并且带上自己的序列号seq=v,此时,服务端就进入了CLOSE-WAIT(关闭等待)状态。TCP服务器通知高层的应用进程,客户端向服务器的方向就释放了,这时候处于半关闭状态,即客户端已经没有数据要发送了,但是服务器若发送数据,客户端依然要接受。这个状态还要持续一段时间,也就是整个CLOSE-WAIT状态持续的时间。
      客户端收到服务器的确认请求后,此时,客户端就进入FIN-WAIT-2(终止等待2)状态,等待服务器发送连接释放报文(在这之前还需要接受服务器发送的最后的数据)。

    • 第三次挥手:服务器将最后的数据发送完毕后,就向客户端发送连接释放报文,FIN=1,ack=u+1,由于在半关闭状态,服务器很可能又发送了一些数据,假定此时的序列号为seq=w,此时,服务器就进入了LAST-ACK(最后确认)状态,等待客户端的确认。

    • 第四次挥手:客户端收到服务器的连接释放报文后,必须发出确认,ACK=1,ack=w+1,而自己的序列号是seq=u+1,此时,客户端就进入了TIME-WAIT(时间等待)状态。注意此时TCP连接还没有释放,必须经过2∗MSL(最长报文段寿命)的时间后,当客户端撤销相应的TCB后,才进入CLOSED状态。
      服务器只要收到了客户端发出的确认,立即进入CLOSED状态。同样,撤销TCB后,就结束了这次的TCP连接。可以看到,服务器结束TCP连接的时间要比客户端早一些。

    2.5 应用层(Application Layer)

    应用程序收到"传输层"的数据,接下来就要进行解读。由于互联网是开放架构,数据来源五花八门,必须事先规定好格式,否则根本无法解读。

    "应用层"的作用,就是规定应用程序的数据格式。

    举例来说,TCP协议可以为各种各样的程序传递数据,比如Email、WWW、FTP等等。那么,必须有不同协议规定电子邮件、网页、FTP数据的格式,这些应用程序协议就构成了"应用层"。

    这是最高的一层,直接面对用户。它的数据就放在TCP数据包的"数据"部分。因此,现在的以太网的数据包就变成下面这样。


    在这里插入图片描述

    应用层中的应用软件分两种:客户/服务器和P2P体系结构

    • 客户/服务器(client/server)
      这种类型,就是我们很熟悉的客户端——服务器模型,客户端请求服务器,服务器响应客户端这样的一种方式进行“交流”

    • P2P
      也称为对等体系结构。P2P相当于每个人的电脑度可以当服务器,也可以当客户端,不单单限制于只能客户端访问服务器,你自己的计算机可以去访问别人的计算机上的内容,别的同样可以访问你计算机上的内容,这样达到一种共享的状态。

    常用协议:

    • HTTP超文本传输协议:这是一种最基本的客户机/服务器的访问协议;浏览器向服务器发送请求,而服务器回应相应的网页

    • DNS域名解析协议:DNS是一种用以将域名转换为IP地址的Internet服务

    • FTP文件传送协议:提供交互式的访问,基于客户服务器模式,面向连接 使用TCP可靠的运输服务

      主要功能:减少/消除不同操作系统下文件的不兼容性

    • TFTP简单文件传送协议:客户服务器模式,使用UDP数据报,只支持文件传输,不支持交互,TFTP代码占内存小

    • SMTP简单邮件传送协议:Client/Server模式,面向连接

      基本功能:写信、传送、报告传送情况、显示信件、接收方处理信件

    • TELNET远程登录协议:客户服务器模式,能适应许多计算机和操作系统的差异,网络虚拟终端NVT的意义

    • SNMP简单网络管理协议:SNMP模型的4个组件:被管理结点、管理站、管理信息、管理协议

      SNMP代理:运行SNMP管理进程的被管理结点

      对象:描述设备的变量

      管理信息库(MIB):保存所有对象的数据结构

    • DHCP动态主机配置协议:发现协议中的引导文件名、空终止符、属名或者空,DHCP供应协议中的受限目录路径名 Options –可选参数字段,参考定义选择列表中的选择文件

    3、OSI七层模型

    在这里插入图片描述

    数据在网络中传输的过程:
    发送方通过各种封装处理,把数据转换成比特流的形式,比特流在信号传输的硬件媒介中传输,接收方再把比特流进行解封装处理。


    在这里插入图片描述

    展开全文
  • 【网络协议】互联网协议入门(一)

    千次阅读 热门讨论 2013-12-15 20:33:59
    我们每天使用互联网,你是否想过,它是如何实现的?...互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite)。它们对电脑如何连接和组网,做出了详尽的规定。理解了这些协议,就理解了互联网
  • PAGE 战略合作框架协议 第 PAGE 3 页 共 NUMPAGES 5 页 *有限公司 XX科技有限公司 战略合作框架协议 2019年 04月 19 日 中国深圳 本协议由以下双方签订 *有限公司 以下称甲方 公司地址 网 址 电 话 传 真 XX科技有限...
  • 互联网协议以及网络分层

    千次阅读 2014-07-18 12:55:32
    一直以来对于互联网的各种分层以及协议不太明白,读书的时候没有好好学啊,看到一篇henhao
  • 网络通信协议(互联网协议)

    千次阅读 2019-08-19 15:00:13
    一、操作系统基础 操作系统:(Operating System,简称OS)是管理和控制计算机硬件与软件...2.1 互联网的本质就是一系列的网络协议 一台硬设有了操作系统,然后装上软件你就可以正常使用了,然而你也只能自己使用 像...
  • 互联网协议入门(一)

    千次阅读 2015-11-24 17:19:59
    前言 ...互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite)。它们对电脑如何连接和组网,做出了详尽的规定。理解了这些协议,就理解了互联网的原理。 正文 一、概述
  • http 协议中的content length是什么意思? 2011-06-09 22:39wangsufu77 分类:编程语言 | 浏览 15126 次  编程语言互联网 假如是100K的话,是不是这这个POST请求中只能容纳100的长度? 超过这个长度会自动...
  • 你必须知道的互联网协议详解

    千次阅读 2018-03-05 21:43:51
    互联网协议:1. 概述:1.1 五层模型:互联网的实现,分成好几层。每一层都有自己的功能,就像建筑物一样,每一层都靠下一层支持。用户接触到的,只是最上面的一层,根本没有感觉到下面的层。要理解互联网,必须从最...
  • 互联网的实现,分成好几层。每一层都有自己的功能,就像建筑物一样,每一层都靠下一层支持。 用户接触到的,只是最上面的一层,根本没有感觉到下面的层。要理解互联网,必须从最下层开始,自下而上理解每一层的功能...
  • 互联网协议 — Non-IP 网络架构

    千次阅读 2021-07-10 21:58:33
    目录 文章目录目录Non-IP ...新工作组将取代现有的 ETSI 下一代协议(ISG NGP)工作组,原来的工作组于 2015 年成立,旨在研究即将到来的 5G 时代的网络技术需求,目标是为 5G 网络研究开发新的网络协议,以替代
  • 互联网协议入门(网络分层)

    千次阅读 多人点赞 2018-05-29 16:52:39
    作者:阮一峰我们每天使用互联网,你是否想过,它是如何实现的?...互联网协议"(Internet ProtocolSuite)。它们对电脑如何连接和组网,做出了详尽的规定。理解了这些协议,就理解了互联网的原理...
  • 深入解析互联网协议的原理

    千次阅读 2016-11-18 14:54:24
    我们每天都在使用互联网,更有很多的是依靠互联网来维持公司的正常运作、来维持人们的日常的生活,但你是否想过,互联网的信息传递是如何实现的呢?...互联网的核心是一系列协议,总称为"互联网协议
  • 我们每天使用互联网,你是否想过,它是如何实现的?...互联网的核心是一系列协议,总称为”互联网协议”(Internet Protocol Suite)。它们对电脑如何连接和组网,做出了详尽的规定。理解了这些协议,就理解了互联网
  • 互联网协议-简单理解和介绍

    千次阅读 2018-01-30 22:33:11
    概念:互联网实现过程中大家都需要遵循的准则,我们称之为协议。 前提概要: 我们知道当我们访问互联网是,是在浏览器的导航栏输入一个网址,http://www.baidu.com/ 而一个网址对应的是一个ip地址,所以我们访问...
  • RTXP协议什么

    千次阅读 2020-11-12 06:00:26
    用户能够自由架设开源服务器轻松接入RADAR网络,就像通过SMTP收发邮件和通过HTTP上网一样,互联网各种行业都会制定不同的标准化协议互联网底层通讯采用TCP/IP协议,网站采用HTTP协议;还有各式各样的协议,以及...
  • 网络通信原理_互联网通信协议

    千次阅读 2019-05-23 18:19:02
    Internet实际上就是统一的标准,称为互联网协议(Internet Protocol Suite)。 互联网协议的功能:定义计算机如何接入Internet,以及接入internet的计算机通信的标准。 互联网协议按照功能不同分为tcp/ip四层或tcp...
  • 计算机网络协议是有关计算机网络通信的一整套规则,或者说是为了进行数据交换而制订的规则、约定和标准。网络协议由语法、语义和时序三大要素组成。现在就跟着小编共同来...这一种约束力的产生者就是谁什么呢?没错...
  • 什么是TCP协议

    万次阅读 多人点赞 2018-04-07 12:19:30
    TCP是一个超级麻烦的协议,而它又是互联网的基础,也是每个程序员必备的基本功。首先来看看OSI的七层模型:我们需要知道TCP工作在网络OSI的七层模型中的第四层——Transport层,IP在第三层——Network层,A...
  • 1.前序 对于网关,从专业角度,一般运维和网络管理员会比较了解一下。...2.1 什么是网关? 网关英文名称为Gateway,又称网间连接器、协议转换器。网关在网络层以上实现网络互连,是最复杂的网络互连设备...
  • 路由器ipv6,即为IPv4继任者的下一代互联网协议版本。IPv6是个用于封包交换互联网络的网络层协议。IPv6具有比IPv4大得多的地址空间。这是因为IPv6使用了128位元的地址,而IPv4只用32位元。因此新增的地址空间支持2的...
  • 互联网控制报文协议(ICMP)

    千次阅读 2017-06-21 08:08:54
    1 ICMP(互联网控制消息协议)基本概念IP缺点 无差错报告和差错纠正机制(ICMP也不具有差错纠正的功能) 缺少一种为主机和管理查询的机制 ICMP ICMP本身是网络层协议。但是,它的报文不是如设想的那样直接传送给数据...
  • 互联网协议入门-通俗易懂的讲计算机网络5层结构

    千次阅读 多人点赞 2016-06-18 19:14:12
    这是我见过的介绍计算机网络5层架构最清楚的讲解,对于学习计算机网络5层架构一定是不可缺少的一篇文章,相信...互联网的核心是一系列协议,总称为”互联网协议”(Internet Protocol Suite)。它们对电脑如何连接和组
  • 什么是互联网

    千次阅读 2019-06-13 15:38:11
    一、什么是互联网 互联网:凡是能彼此通信的设备组成的网络就叫互联网。 (1)内部结构: 互联网指的是通过TCP/IP协议族相互连接在一起的计算机的网络。TCP是Transmission Control Protocol,传输控制协议;IP是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 49,610
精华内容 19,844
关键字:

互联网协议是什么意思