精华内容
下载资源
问答
  • 这时候用户可能想要发送一个邮件(要用应用层SMTP协议),传输一个文件(要用应用层FTP协议-传输层TCP),浏览一个网页,在浏览器输入网址后(http协议-应用层),需要DNS服务器将域名解析为目的IP地址(应用层DNS...

    首先,从一个用户接入互联网开始,一般都不能独占一个外网地址,需要DHCP(应用层)动态分配一个IP地址,才可以上网。

    这时候用户可能想要发送一个邮件(要用应用层SMTP协议),传输一个文件(要用应用层FTP协议-传输层TCP),浏览一个网页,在浏览器中输入网址后(http协议-应用层),需要DNS服务器将域名解析为目的IP地址(应用层DNS协议-传输层UDP),有了目的IP地址之后,开始经过传输层的TCP协议,进行一个面向连接的传输。传输层的作用是进行报文的可靠性的验证、流量控制等,还有重要的一点就是它拥有端口号的概念,可以实现不同主机之间进程间的通讯。

    无论传输层用的是TCP协议,还是UDP协议,网络层都通过IP协议进行一个不可靠传输,所谓不可靠就是不保证100%交付。

    那么问题来了,我知道了对方的目的IP地址,如何将报文正确转发到目的地址所在的主机呢?

    主机先把报文转发给默认路由器(如果没有默认路由器,就转发给随便转发一个路由器),路由器在路由表中查找有没有对应的IP地址,如果没有,再将报文转发给其他的路由器,以此类推。这里有一个问题,转发的过程并不像大家想象的那么简单,因为真正的转发是通过物理地址进行转发的,这里就设计到将IP地址转化为物理地址的过程(ARP协议-IP协议的一部分,属于网络层协议)。刚刚谈到了路由选择问题,那路由器实际上是可以通过相互学习(实际上就是发报文)来完善自己的转发表的,这里面就涉及到内部网关协议RIP

    刚刚提到IP协议实际上提供了不可靠传输,但是还是做了一些差错检验的工作的,如ICMP协议。

    PS:网络层还有个IGMP用于实现多播。

    继续向下分析,两个路由器通过物理地址进行通讯,而信道是双工模式的,即同一时间可能有其他的路由器或者主机在发送消息,这时候,就要用到CSMA/CD碰撞监测了。

    上文讲到,网络的可靠传输是通过传输层来保证的。下面主要说下TCP和UDP。

    UDP:

    头部8个字节

    长度由进程决定

    TCP:

    头部20个字节

    长度由TCP自己根据拥塞情况和窗口值决定

    TCP链接的端点交套接字(socket)或插口

    TCP与UDP相比,有点是:可靠传输、流量控制、拥塞控制

    这三者从根本上都是通过控制滑动窗口实现的。

    可靠传输是利用滑动窗口的确认需要,来保证可靠性

    流量控制通过规定发送方的发送窗口实现流量控制

    拥塞控制实际上是从整个网络层面来进行流量控制,其核心还是滑动窗口机制。

    TCP的三次握手

    直接上这两个图吧!

    四次握手断开连接:


    中间有几个注意事项:

    可以参看这篇文章

    http://blog.csdn.net/liufangbaishi2014/article/details/51983695

    展开全文
  • 计算机网络层次结构的运输层,TCP协议、UDP协议解决了端到端的通信问题。 在这里的协议即为软件,用以解决计算机网络的通信互联问题。 计算机网络层次结构概述 现代计算机网络基本层次结构由5个层次组成,...

    在计算机网络层次结构的运输层中,TCP协议、UDP协议解决了端到端的通信问题。
    在这里的协议即为软件,用以解决计算机网络的通信互联问题。

    计算机网络层次结构概述

    现代计算机网络基本层次结构由5个层次组成,自顶向下为:应用层、运输层、网络层、数据链路层、物理层。

    应用层:面向应用程序。其中主要的协议有HTTP、FTP、SMTP、DNS、 SNMP。

    运输层:解决端到端(即进程到进程)的传输问题。协议有TCP、UDP。

    网络层:解决节点到节点(即主机到主机,不相邻的主机)的传输问题,提供路由选择与分组交换功能。其协议为IP协议。

    数据链路层:相邻节点通信时,该层次可以提供成帧等功能。

    物理层: 物理接口相关的解决办法由该层次提供。


    TCP协议与UDP协议

    • TCP协议,即传输控制协议。面向连接的可靠传输。将应用层的报文加以处理,加上运输层的协议控制信息(PCI)作为首部,从而形成TCP报文段,因为TCP 提供的是面向连接的可靠传输,会提供流量控制、差错控制等功能,所以TCP协议会对应用层报文的长度加以限制进行分组,每个分组都会加上运输层的PCI。

    • UDP协议,即用户数据报协议。无连接的不可靠传输。UDP较为简单,因为是无连接传输,所以与TCP相比安全性得不到保障,但是传输效率高一些。UDP是面向报文的,不会将应用层的报文进行分组,因此就要求选择合适大小的报文。

    总结

    为了使计算机网络的通信子网(物理层、数据链路层、物理层)尽可能的简单,便于实现,运输层以及应用层在计算机网络中是较为复杂的两层,将复杂的问题尽可能地在端节点(用户主机)解决。而TCP、UDP两种不同类型的协议方案将端到端的通信问题进行了合理的处理。

    可能写的不太好,欢迎补充、讨论学习。

    展开全文
  • 计算机网络中的各种协议

    千次阅读 2019-04-15 20:57:46
    TFTP协议:是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。 HTTP协议:超文本传输协议,是一个属于应用层的面向对象的协议,由于其简捷、快速的方式...

    常见的集中协议

    ICMP协议:因特网控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。

    TFTP协议:是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。

    HTTP协议:超文本传输协议,是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。

    DHCP协议:动态主机配置协议,是一种让系统得以连接到网络上,并获取所需要的配置参数手段。

    NAT协议:网络地址转换属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,

    DHCP协议:一个局域网的网络协议,使用UDP协议工作,用途:给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机作中央管理的手段。

    ARP是什么?RARP是什么?

    ARP是地址解析协议(Address Resolution Protocol,是根据IP地址获取物理地址的一个TCP/IP协议。我们简单介绍一下ARP的工作原理。

    ① 首先,每个主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址之间的对应关系。

    ② 源主机要发送数据时,首先检查ARP列表中是否有对应IP地址的目的主机的MAC地址,如果有,则直接发送数据,如果没有,就向本网段的所有主机发送ARP数据包,该数据包包括的内容有:源主机IP地址,源主机MAC地址,目的主机的IP地址。

    ③ 当本网络的所有主机收到该ARP数据包时,首先检查数据包中的IP地址是否是自己的IP地址,如果不是,则忽略该数据包,如果是,则首先从数据包中取出源主机的IP和MAC地址写入到ARP列表中,如果已经存在,则覆盖,然后将自己的MAC地址写入ARP响应包中,告诉源主机自己是它想要找的MAC地址。

    ④ 源主机收到ARP响应包后。将目的主机的IP和MAC地址写入ARP列表,并利用此信息发送数据。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。

    广播发送ARP请求,单播发送ARP响应。

    RARP是逆地址解析协议(Reverse Address Resolution Protocol,作用是完成硬件地址MAC到IP地址的映射,主要用于无盘工作站,因为给无盘工作站配置的IP地址不能保存。工作流程:在网络中配置一台RARP服务器,里面保存着IP地址和MAC地址的映射关系,当无盘工作站启动后,就封装一个RARP数据包,里面有其MAC地址,然后广播到网络上去,当服务器收到请求包后,就查找对应的MAC地址的IP地址装入响应报文中发回给请求者。因为需要广播请求报文,因此RARP只能用于具有广播能力的网络。

    ARP与RARP的比较

    (一)相同点

    对于ARP与RARP,request是广播,而reply是单播。

    (二)不同点

    1.协议的目的完全不同。在总述中已经说明。

    2.发送ARP packet的是路由器,而RARP不是。

    3.ARP server在kernel中,而RARP是一个用于进程。

    展开全文
  • 计算机网络中ARP协议

    2019-03-07 23:03:59
    要理解ARP协议的工作原理必须先理解IP地址和MAC地址区别,MAC地址是数据链路层和物理层使用地址,而IP地址是网络层和以上各层使用地址,是一种逻辑地址(IP地址使用软件实现)如下图: 在发送数据时,数据...

    IP地址与MAC地址

    要理解ARP协议的工作原理必须先理解IP地址和MAC地址的区别,MAC地址是数据链路层和物理层使用的地址,而IP地址是网络层和以上各层使用的地址,是一种逻辑地址(IP地址使用软件实现的)如下图:

    这里写图片描述

    在发送数据时,数据从高层到低层,然后才到通信链路上传输。使用IP地址的IP数据报一旦交给了数据链路层,就被封装成了MAC帧。MAC帧在传送时使用的源地址和目的地址都是硬件地址。连接在通信链路上的设备(主机或路由器)在接收MAC帧时,根据是MAC帧首部的硬件地址。在数据链路层看不到隐藏在MAC帧中的IP地址。只有在剥去MAC帧的首部和尾部后把MAC层的数据交给网络层后,网络层才能在IP数据报的首部中找到源IP地址和目的IP地址。
    这里写图片描述

    ARP地址解析协议

    地址解析协议(Address Resolution Protocol),其基本功能为透过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。它是IPv4中网络层必不可少的协议,不过在IPv6中已不再适用,并被邻居发现协议(NDP)所替代。

    基本功能

    在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址。而在TCP/IP协议中,网络层和传输层只关心目标主机的IP地址。这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是ARP协议要做的事情。所谓地址解析(address resolution)就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。

    这里写图片描述

    注意:在点对点链路中不使用ARP,实际上在点对点网络中也不使用MAC地址,因为在此类网络中分别已经获取了对端的IP地址。

    ARP工作机制

    报文格式

    这里写图片描述

    以太网传输层

    目标以太网地址:目标MAC地址。FF:FF:FF:FF:FF:FF (二进制全1)为广播地址。
    源以太网地址:发送方MAC地址。
    帧类型:以太类型,ARP为0x0806。

    在每台安装有TCP/IP协议的电脑或路由器里都有一个ARP缓存表,表里的IP地址与MAC地址是一对应的,如下表所示。
    这里写图片描述

    当主机A要向本局域网上的某个主机B发送IP数据报时,就先在其ARP高速缓存中查找有无主机B的IP地址。如果有,就在ARP高速缓存中查出其对应的硬件地址,再把其硬件地址写入到MAC帧,然后通过局域网把该MAC帧发往此硬件地址。

    如果主机高速缓存中没有则运行ARP按照以下步骤查找出主机B的硬件地址。

    (1)ARP进程在本局域网上广播发送一个ARP请求分组如下:

    这里写图片描述
    (2)本局域网上所有的主机上运行的ARP进程都收到此ARP请求分组。

    (3)主机B在ARP分组中见到自己的IP地址就向A发送ARP响应分组,并写入自己的硬件地址,相应分组是普通的单播。

    (4)主机A收到主机B的ARP响应分组后,就在其ARP高速缓存中写入主机B的IP地址到硬件地址的映射。

    (5)另外,当发送主机和目的主机不在同一个局域网中时,即便知道目的主机的MAC地址,两者也不能直接通信,必须经过路由转发才可以。所以此时,发送主机通过ARP协议获得的将不是目的主机的真实MAC地址,而是一台可以通往局域网外的路由器的MAC地址。于是此后发送主机发往目的主机的所有帧,都将发往该路由器,通过它向外发送。这种情况称为委托ARP或ARP代理(ARP Proxy)。

    ARP缓存表采用老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。

    展开全文
  • 计算机网络中协议的理解

    千次阅读 2020-06-14 16:05:07
    谈谈自己对网络协议的理解
  • 计算机网络中常用的协议及端口号

    千次阅读 2020-06-13 08:51:52
    计算机网络中常用的协议及端口号 总结一下网络中常用的协议及端口号: 端口号 服务 协议名称 21号端口 FTP 文件传输协议 23号端口 Telnet 远程登录协议 25号端口 SMTP 简单邮件传输协议 53号端口 DNS ...
  • NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议。...NTP就是用来解决这个问题的,NTP(Network Time Protocol,网络时间协议)是用来使网络中的各个计算机时间同步...
  • 计算机网络中协议相关问题

    千次阅读 2018-09-19 10:58:30
    TCP对应的协议和UDP对应的协议 协议上的各种机器 交换机、路由器的概念,各自的用途,区别 路由器的分组转发算法。 说说静态路由和动态路由有什么区别 传输层协议与网络层协议的区别? 硬件(MAC)地址的概念及...
  • 计算机网络中的五层协议的体系结构

    万次阅读 多人点赞 2019-06-15 16:27:48
    OSI七层协议体系结构概念清楚,理论也比较完整,但它既复杂又不实用。 TCP/IP体系结构则不同,但它却得到了非常广泛应用。TCP/IP是一个四层体系结构,它...因此在学习计算机网络的原理时往往采取折中办法...
  • 对于计算机网络的学习,“协议”是一个高频词,那么究竟协议是什么? 协议:protocol,是一种允许电子设备相互交流一系列标准规则(rules)。例如:传输什么样数据、传输与接收数据时候会使用什么样...
  • 计算机网络 计算机网络体系结构 协议与层次

    千次阅读 多人点赞 2020-03-02 09:12:52
    学习计算机网络过程中的心得体会以及知识点的整理,方便我自己查找,也希望可以和大家一起交流。 —— 计算机网络体系结构 —— 文章目录计算机网络(三)—— 计算机网络体系结构 ——1. 计算机网络体系结构的形成...
  • 下面就对计算机网络中的五层协议体系结构作一下简单介绍。 物理层:物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输数据化比特流,而不是指具体的传输媒体。 物理层的作用是要尽可能地屏蔽掉不同传输媒体和...
  • TCP协议和UDP协议的区别 应用层:直接为用户应用程序提供服务 运输层:负责主机进程间通信 网络层:选择合适路由,使数据分组(packet)可以交付到目的主机 数据链路层:在物理层提供比特流服务基础上,...
  • 计算机网络中常见各层协议

    万次阅读 多人点赞 2018-08-20 09:34:25
    DHCP(Dynamic Host Configuration Protocol)动态主机分配协议,使用 UDP 协议工作,主要有两个用途:给内部网络网络服务供应商自动分配 IP 地址,给用户或者内部网络管理员作为对所有计算机作中央管理手段。...
  • 计算机网络通信常用相关协议

    千次阅读 2018-07-20 14:42:47
     TCP/IP是基于TCP和IP这两个最初的协议之上的不同的通信协议的大集合  TCP是传输控制协议,用于从应用程序到网络的数据传输控制,负责在数据传送之前将它们分割为 IP 包,然后在它们到达的时候将它们重组。  IP...
  • 计算机网络协议的概念

    千次阅读 2019-05-23 01:05:00
    1.概念:网络协议计算机网络相互通信对等层实体之间交换信息时必须遵守规则或约定集合。 2.网络体系结构:网络各层、层中协议和层间接口集合,即网络层次结构模型和协议的集合称为网络体系结构。 3.网络...
  • 协议层次划分可以根据应用/功能或者层次/数据封装来确定。 ARP协议从功能上讲是为链路层提供MAC地址。 从层次上是基于Ethernet协议,而IP协议也基于Ethernet协议,IP协议属于网络层,所以ARP协议也属于网络层。 ...
  • 计算机网络中各层的协议图表:
  • 计算机网络协议(三)——UDP、TCP、Socket

    万次阅读 多人点赞 2019-09-04 08:39:53
    这个专栏的计算机网络协议,我是在极客时间上学习 已经有三万多人购买刘超老师趣谈网络协议专栏,讲特别好,像看小说一样学习到了平时很枯燥知识点,计算机网络的书籍太枯燥,感兴趣同学可以去付费购买,...
  • 应用层的协议分类: 基于tcp的协议:POP3 ,FTP, HTTP, Telnet, SMTP; 基于udp的协议:DHCP,TFTP,SNMP,DNS,RIP。 一、TCP协议 各协议的介绍(含端口号) ...是TCP/IP协议族中的一员,由RFC1939 定义。本协...
  • 计算机网络中常见各层协议 计算机网络各层涉及协议
  • 计算机网络-RIP协议

    千次阅读 2020-03-06 14:27:52
    目录1 前言2 RIP协议的三个要点3 路由表的建立3.1 距离向量算法3.2 路由表更新过程举例 1 前言 路由信息协议 RIP (Routing Information ...计算机网络中的自治系统是指能够自主决定在本系统中应采取某种路由协议...
  • ISP:Internet Service Provider  联网服务提供商应用层:HTTP:hypertext transfer protocolFTP:File Transfer ProtocolSMTP:simple mail transfer protocol 简单邮件传输协议POP3:post office protocol-version3...
  • 计算机网络协议 应用层  ·DHCP(动态主机分配协议)  · DNS (域名解析)  · FTP(File Transfer Protocol)文件传输协议  · Gopher (英文原义:The Internet Gopher Protocol 中文释义:(RFC-1436)...
  • 在下最近在完成计算机网络的课程设计,题目要用socket实现滑动窗口协议,但是有点要求看不懂,百度也找不到,想请教一下: **超时计数器技术**, **帧编号盘重技术**, **校验和技术**, 使用**重传技术**是否...
  • 计算机网络五层协议

    万次阅读 2018-04-24 16:21:23
    计算机网络五层协议 1.应用层 任务 :通过应用进程间交互完成特定网络应用.应用层定义是应用进程间通信和交互规则 例如: HTTP SMTP FTP 2.运输层 任务:负责向两个主机进程之间通信提供...
  • 计算机网络:局域网协议

    千次阅读 2020-05-24 14:43:12
    根据计算机网络的拓扑结构,可将网络分为总线型、树型、星型、环型和网状型五种类型。常见局域网组网方式包括令牌环、光纤分布数字接口和以太网等。 一、概述 在不同类型网络拓扑结构,网络设备连接方式、...
  • 网络层(ip协议)、链路层(eth/arp协议) 网络层:地址管理与路由选择 通过对地址的管理,能够保证数据从一台主机发送到另一台主机,并且要选择合适的路径进行传输。...节点:网络中的每个设备都是一个节点 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 18,595
精华内容 7,438
关键字:

计算机网络中的协议