计算机网络

目录

ARP:

IP:

ICMP:

TCP:

TCP和ICMP区别:

DNS:

DHCP:

FTP:

HTTP:


网络常见协议

端到端传输是借助数据链路层点到点服务才能够实现的

ARP:

ARP(Address Resolution Protocol)是一种用于在IPv4网络中将IP地址解析为MAC地址的协议。在IPv4网络中,每个设备都有一个唯一的MAC地址和一个IP地址。当一个设备需要与另一个设备通信时,它首先需要知道目标设备的MAC地址才能发送数据帧。ARP协议就是用来解决这个问题的。

ARP工作原理如下:

  1. 当一个设备知道目标IP地址但不知道对应的MAC地址时,它会发送一个ARP请求广播到网络中。
  2. 其他设备接收到这个ARP请求后,如果发现自己的IP地址与请求中的目标IP地址匹配,就会向发送ARP请求的设备发送一个ARP响应,包含自己的MAC地址。
  3. 发送ARP请求的设备收到响应后,就知道了目标设备的MAC地址,然后可以将数据发送给目标设备。

ARP协议在局域网中广泛应用,它是实现设备间通信的重要基础之一。

这就像你在一个大型办公室找朋友,你只知道朋友的名字,但不知道他的办公室号码。你会怎么做呢?你会在办公室里大声喊他的名字,希望他能听到并告诉你他的位置。

IP:

IP(Internet Protocol)是计算机网络中用于标识和定位设备的一种协议。它是互联网的核心协议之一,负责将数据包从一个节点传输到另一个节点。

IP地址就像是设备在网络中的住址,每台连接到互联网的设备都会分配一个唯一的IP地址。这个地址由32位(IPv4)或128位(IPv6)二进制数字组成,通常以点分十进制表示,比如IPv4地址可能是192.168.1.1。

IP协议主要负责两个重要的功能:

  1. 路由:IP地址标识了网络中的每个设备,使得数据包能够正确地从源节点传输到目标节点。路由器通过查找目标IP地址,并根据一定的路由表将数据包转发到正确的下一跳节点,实现了数据在网络中的传输。
  2. 寻址:IP地址提供了一种定位网络中设备的方法,类似于现实生活中的邮政地址。通过IP地址,数据包能够准确地被发送到目标设备。

总的来说,IP协议是互联网通信的基础,它使得全球范围内的设备能够相互通信和交流。

你朋友的地址就相当于他的IP地址。它告诉邮递员该把快递送到哪个地方。IP地址也是一样的原理,它告诉网络中的数据包该传送到哪个设备。

ICMP:

ICMP(Internet Control Message Protocol)是一种网络协议,用于在IP网络中传输控制消息。它通常被用来进行网络故障排除、错误报告和提供一些关键的网络状态信息。

举个简单的例子,假设你正在用电脑上网冲浪,突然间你无法访问某个网站。这时候,你可能会怀疑是不是网络出了问题。ICMP就像是一个网络的诊断工具,它可以帮助你找到问题所在。

当你尝试连接某个网站但是失败时,你的电脑会发送一个ICMP消息给目标服务器,询问它是否可达。如果目标服务器收到了这个消息,但是无法回复,你的电脑就会知道目标服务器可能出了问题,而不是网络连接的其他部分有问题。

通过ICMP,网络设备可以相互通信,以检测和解决网络中的问题,确保网络通信的顺畅和稳定。

如果你的朋友的邮箱因为某些原因无法接收邮件,ICMP也可以向你的电子邮件客户端发送一个错误消息,告诉你邮件未能送达,并可能提供一些关于失败原因的信息,比如邮箱不存在或者邮箱已满等等。

所以,ICMP就像是网络中的邮局追踪服务,帮助你了解数据包的状态并解决通信问题。

当你在网上冲浪时,你可能会遇到一些问题,比如打不开网页或者连接不上服务器。这就像是你在驾驶汽车时,突然遇到了一个路障,无法继续前行。

这时候,ICMP就像是你的导航系统,它会自动检测路上的问题并向你发送通知,告诉你有障碍物,导致你无法顺利行驶。它还可以告诉你,哪些道路是畅通无阻的,你可以选择绕道而行,以避开问题路段。

所以,ICMP就像是你在网络旅行中的导航助手,帮助你发现并避免通信中的障碍,让你的网络体验更加顺畅。

TCP:

好的,让我用一个生活中的场景来解释 TCP。

想象一下你和你的朋友正在玩一个游戏,这个游戏需要你们之间传递一些特殊的砖块来建造一座城堡。你们之间的通信就像是 TCP 协议的工作方式。

  1. 建立连接:首先,你和你的朋友要商量好游戏规则,确定好开始建造城堡的时间。这个过程就像 TCP 握手的过程,你们互相确认并建立了连接。

  2. 可靠性:一旦开始建造城堡,你的朋友会给你传递砖块,然后你收到后回复确认。如果你没有确认收到,你的朋友会重新传递砖块,直到你确认收到为止。这确保了砖块的传递是可靠的。

  3. 流量控制:如果你的城堡建造得很快,你可能来不及处理那么多的砖块,会要求你的朋友暂停一下传递。这就像 TCP 的流量控制,你可以通过暂停接收数据来控制数据的流量。

  4. 拥塞控制:假设游戏中有其他玩家也在建造城堡,可能会导致建造城堡的区域拥挤。在这种情况下,你们会减慢砖块的传递速度,以避免拥塞。这就是 TCP 的拥塞控制机制,它会根据网络的拥塞程度来调整传输速率。

  5. 结束连接:当城堡建造完成后,你们会结束游戏并分别回家。这就像 TCP 的连接终止,一旦通信结束,连接也会关闭。

综上所述,TCP 就像你和朋友之间在玩游戏时的通信方式,通过建立可靠的连接、传递数据、控制流量和处理拥塞来确保通信的顺畅和可靠。

UDP:

UDP(User Datagram Protocol,用户数据报协议)是另一种在计算机网络中常用的通信协议,与 TCP 相比,UDP 更加简单、轻量级,但不具备 TCP 的可靠性和顺序性保证。

以下是 UDP 的一些特点:

  1. 无连接性:与 TCP 不同,UDP 是无连接的,发送数据之前不需要先建立连接。这意味着发送端可以随时向接收端发送数据包,而不需要等待连接的建立。

  2. 不可靠性:UDP 不保证数据的可靠传输,数据包可能会丢失、重复、顺序错乱。UDP 协议本身不提供重传、确认和顺序控制机制,因此在传输过程中可能会出现丢失数据的情况。

  3. 轻量级:由于不需要维护连接状态、序列号等信息,UDP 的头部信息较 TCP 简单,因此在传输效率上更加高效。

  4. 适用场景:UDP 适用于对传输速度要求较高,但对数据可靠性要求较低的场景,如音频、视频传输、实时游戏等。在这些应用中,轻量级和快速的特性更为重要,而数据的丢失或延迟可以通过应用层的一些机制进行处理。

虽然 UDP 不具备 TCP 的可靠性和顺序性保证,但在某些特定的应用场景下,UDP 的轻量级和快速特性使其成为一种非常有效的通信协议。

TCP&ICMP:

跑在TCP之上的服务,可靠性比较高,实时性不高

跑在UDP之上的服务,实时性比较高,可靠性不高

TCP 就像你打电话前先跟对方打个招呼,确认双方都在听,然后开始聊天。聊天的时候,你会反复确认对方听懂了没,如果有什么误会就及时纠正。这样虽然保证了信息传输的可靠性,但也得花费一些时间和精力。

而 UDP 就像你直接拨号开始说话,不用等对方接听。你只管把你想说的话迅速地说出去,不需要担心对方听没听到,也不管有没有听明白。虽然说话更快,但可能有些信息会丢失,而且也不知道对方是否收到了完整的信息。

所以,如果你要求信息传输一定要准确、完整,就像发送重要文件或者做网上银行转账,那就用 TCP 吧。但如果你只是要传输一些实时性要求高、可以容忍少量丢失的数据,比如在线游戏或者看直播,那就用 UDP 更合适。

DNS:

DNS(Domain Name System,域名系统)是互联网中的一种分布式数据库系统,用于将域名转换为对应的 IP 地址。它是互联网的基础设施之一,允许用户通过易记的域名访问网站、发送电子邮件等。

DNS的主要功能包括域名解析和域名管理。当用户在浏览器中输入一个域名时,操作系统会向DNS服务器发送查询请求,DNS服务器会返回与该域名对应的IP地址,然后操作系统将用户连接到相应的服务器。这个过程被称为域名解析。

DNS采用分层的设计,包括根域名服务器、顶级域名服务器、权威域名服务器和本地域名服务器等不同类型的服务器,它们协作完成域名解析的过程。

除了域名解析,DNS还承担了其他重要的功能,如负载均衡、网络安全和内容过滤等。总的来说,DNS在互联网中扮演着至关重要的角色,为用户提供了方便的域名访问服务,并支持互联网的正常运行。

DHCP:

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一种网络协议,用于在网络上自动分配 IP 地址、子网掩码、网关和其他网络参数给网络上的设备。

DHCP的工作原理如下:

  1. 客户端请求:当设备(如计算机、智能手机、打印机等)连接到网络时,它会发送一个DHCP请求,请求获取网络配置信息。

  2. DHCP服务器响应:网络中的DHCP服务器收到请求后,会为设备分配一个可用的IP地址、子网掩码、网关等网络配置信息,并将这些信息封装在DHCP响应消息中发送给设备。

  3. 配置参数应用:设备接收到DHCP响应后,会自动应用获取到的网络配置信息,从而使其能够与网络正常通信。

DHCP的优点包括简化网络管理、减少配置错误、节省IP地址资源、提高网络安全性等。它使得设备可以在加入网络时自动获取所需的网络配置,而无需手动配置每个设备的网络参数,特别是在大型网络环境中,DHCP能够极大地简化网络管理工作。

总的来说,DHCP是网络中的重要协议之一,为设备提供了方便的自动网络配置服务,促进了网络的高效运行。

当你连接到网络时,你的设备(比如手机或电脑)需要一个IP地址才能与其他设备通信。DHCP就像是一个网络服务员,它负责给你分配IP地址、网关和其他必要的网络信息,就像给你分配一张桌子一样。这样,你就可以在网络上自由地浏览网页、发送邮件等,而不用担心配置网络参数的烦恼。DHCP让连接网络变得更简单,省去了很多手动设置的麻烦

FTP:

FTP(File Transfer Protocol,文件传输协议)是一种用于在网络上传输文件的标准协议。它允许用户在网络上将文件从一个计算机传输到另一个计算机,以及从服务器下载文件到本地计算机。

FTP的工作原理如下:

  1. 客户端连接:用户通过FTP客户端软件连接到FTP服务器。FTP客户端可以是各种不同的软件应用,如FileZilla、WinSCP等。

  2. 身份验证:一旦连接建立,用户可能需要提供用户名和密码进行身份验证,以便访问服务器上的文件。

  3. 文件传输:一旦身份验证通过,用户可以通过FTP客户端进行文件的上传和下载操作。用户可以在本地计算机和服务器之间浏览文件系统,并在这两者之间传输文件。

  4. 断开连接:完成文件传输后,用户可以选择断开与FTP服务器的连接。

FTP在文件传输方面非常灵活和广泛应用,它可以用于上传网站文件、备份数据、下载软件和文档等。然而,需要注意的是,FTP在传输过程中的数据不加密,存在安全风险,因此在敏感数据传输时可能需要使用更加安全的替代方案,如SFTP(SSH File Transfer Protocol)或FTPS(FTP over SSL/TLS)。

想象你有一个超级大的文件仓库,里面有各种各样的文件,有图片、音乐、视频等等。而FTP就像是一条连接这个仓库的特别通道,让你可以通过互联网来访问这个仓库。你可以使用特殊的钥匙(就是FTP客户端软件),通过这条通道,把你想要的文件放进去,或者从里面取出来。而这个通道是双向的,你不仅可以往里面放文件,还可以从里面取出你需要的文件。这样一来,你就可以很方便地与别人共享文件,或者备份自己的重要数据。就像是你有一个超级大的云盘,可以存放和取出各种文件,而且速度还很快呢!

HTTP:

HTTP(Hypertext Transfer Protocol,超文本传输协议)是一种用于在网络上传输超文本(如HTML、CSS、JavaScript等)的协议。它是万维网的基础,用于在客户端和服务器之间传输网页、图片、视频等资源。

HTTP的工作原理如下:

  1. 客户端请求:当你在浏览器中输入一个网址或点击链接时,浏览器会发送一个HTTP请求到服务器,请求特定的资源(如网页、图片等)。

  2. 服务器响应:服务器收到请求后,会解析请求并找到相应的资源,然后通过HTTP协议将该资源发送回客户端。

  3. 传输数据:一旦服务器响应成功,数据就会通过网络传输到客户端,客户端的浏览器会解析这些数据并呈现给用户。

  4. 断开连接:完成数据传输后,客户端和服务器之间的连接会关闭。

HTTP是一个无状态协议,这意味着每个请求都是独立的,服务器不会保存关于客户端的任何状态信息。为了实现状态管理,通常使用Cookie等机制来跟踪用户的状态。

总的来说,HTTP是一种使得浏览器和服务器能够相互通信、传输网页和其他资源的协议,它是互联网世界中极为重要的基础设施之一。

HTTP工作原理简单来说就是客户端发送请求到服务器,服务器响应并传输数据回客户端。HTTP是建立万维网的基础之一,使得用户能够在浏览器中浏览网页、下载资源等。

  • 12
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值