⑴ 计算机网络是靠什么互相通信
计算机网络是使用通信介质来进行计算机连接,并达到相互通信的目的的,通俗地讲,计算机网络就是把分布在不同地理区域的独立计算机以及专门的外部设备利用通信线路连成一个规模大、功能强的网络系统,从而使众多的计算机可以方便地互相传递信息,共享信息资源。
⑵ 网络是如何连接的
网络是如何连接的
从浏览器输入一个网址到浏览器返回响应这中间发生了什么?即假设把整个网络当做一个黑盒,输入是url,输出的是response,那么在这个黑盒里面发生了什么?一串url是怎么请求到网络上的资源的?我们都知道tcp/ip协议,但是他们在整个网络传输过程中,具体承担什么角色?他们的原理是什么?对于tezign而言,为什么切换不同的host就能访问到不同的环境,都知道是dns,虽然访问的是相同的域名,但是在不同的host下被解析成不同的ip,进而访问到不同的机器上。但是ip是怎么找到机器的?应用程序发送的数据是怎么被传输到服务器上的等等,这中间的过程其实都是非常复杂的。
以Tezign的一个url为例( https://vms-service.tezign.com/material/dam/public/query-common-dic )
当在浏览器或者终端等地方输入这个url,整个请求流程应该如下所示
注意到最前面是https,所以是使用加密的http协议访问Web服务器 vms-service.tezign.com 则是被请求的域名 material/dam/public/query-common-dic 则是请求的资源 在这里指的是materila的有结果接口, 当点击Enter时候, 浏览器会根据当前系统版本及设置生成如下的一段Http request,
如果直接输入的ip则可以跳过这步。服务器是不知道域名的,域名说白了就是全网共同维护的DNS。
通过DNS查询ip的操作称做域名解析,流程为:
每台计算机上都自带了一个DNS客户端,由客户端生成查询信息(如果浏览器访问速度较慢的话,可以尝试加上114这个dns)
114.114.114.114 为国内通过的DNS解析服务器,访问国内网址好一点
8.8.8.8 为google提供的全球通过DNS解析,访问国外网址好一点
会首先发送到最近的一台DNS服务器,如果最近一台没有相应的域名信息,则根据域名分层进行查找,如vms-service.tezign.com ,这个域名后面其实是隐藏了/. 所以会先发到跟DNS服务器,在跟服务里面找到com的地址,然后com的服务器里面保存了tezign的信息,将请求进一步转发到tezign,tezign里面找到vms-service,然后再进行返回(这里面澄清一下所谓的全球的只有13台根服务器,🇺🇸占了9台,美国可以随时断中国的网络,纯属扯断,并且13台也只是一个泛化的概念,真实的机器可能几百几千台镜像服务器分布世界各地,中国也是负责F、I、K、L根镜像服务器的管理 )
Class: 网络类型 互联网为IN
记录类型: A表示的是IP地址
<colgroup><col width="200"><col width="100"><col width="100"><col width="149"></colgroup>
|
域名
|
Class
|
记录类型
|
响应数据
|
|
vms-service.tezign.com
|
IN
|
A
|
10.80.82.192(env4)
|
首先我们要明确 应用程序并不具备发送任何信息到网络上的能力,包括协议栈也不具备。真正能发的是网卡,但是网卡只认识 0跟1,所以应用程序想要发送的信息,需要经过协议栈进行包装。
网络中传输的最小单位是包:
对于TCP/IP 我们可以这样理解: 发快递时候 TCP是快递单 IP是快递盒。
快递单上描述了双方的各种信息,而快递盒决定了里面发送的物品不能超过快递盒的容量
套接字(Socket)是一个虚拟概念,他的实体其实是各种通信控制信息(简单的理解就是ip:port),通过两个套接字可以实现端与端的通信(一台机器上可能同时存在多个socket,但是一个端口同时只能存在一个socket,这也是为什么有时候tomcat异常退出后 再次启动报端口被占用的原因,socket未关闭 端口未被释放 无法进行下次通信)
要想实现双方通信必须通信双方交换各自的同学控制信息(典型的信息ip、port),就像发邮件或者快递一样,必填发送人地址 接收方地址,这样接收方就能根据发送人地址进行回信。
连接的实际操作如下:
根据发送数据量的长度,还有每个包能发送的最大数据量(MSS),就可以算出这次请求发送了多个包,每个包发送的位数是多少到多少。(抓包工具 wireshark )
可以看到鼠标选中这行seq为20269 len为135,所以第二行seq我20269+135=20404 ack全部为11代表全部为发送或者接收(也可以注意到前面的source与dst 分别代表着发送与接收的ip)
可以看到source与dst分别与上面相反,代表着上面的响应或者发送,可以看到ACK为20404 seq为11正好跟上面完全相反。
他们之间的规律是seq 代表着发送方发送的数据起始位数(第一次发送的起始位并不是0或者1而是一个随机数),ack代表着接收方接收到的位数+1(如ack为1000则代表接收了999的数据下一次希望接收到1000开头的数据)
在这里可能很多人想到了三次握手四次挥手,但是不必纠结为什么是三次,两次不行吗。他们的最终目的都是为了数据的安全有效传输。
三次握手:
目的: 连接到服务器的指定端口,并建立TCP连接,同步双方的序列号和确认号并交换TCP窗口信息
1、第一次握手 客户端发送一个没有数据的包(tcp头 syn = 1 seq = x)给服务端, 代表客户端进入syn-send(同步已发送)状态
2、第二次握手 服务端接收报文后,如果同意建立连接会返回一个syn = 1 seq = y = x+1 ack = x +1的数据包,代表服务端也进入syn-send(同步已收到)
3、第三次握手 客户端接收到服务端的响应后 再次给服务端发送 seq = x + 1 ack = y+1 代表客户端收到服务端的确认信息,并再次发送给服务端表示 我确认了你的确认 这时双方都进入 ESTABLISHED状态,双方可以传输数据了
为什么客户端要发送两次请求给服务端?
第二次返回给服务端的确认信息之前,其实双方已经都是处于syn-send状态 已经可以开始通信了,但是因为存在数据丢失(丢包),所以存在重试机制,如果第一次请求失败,会在一段时间后重试第二次,如果恰好第一次失败是网络问题或者其他临时阻塞问题,那么就会产生同时两个请求并且 第二次重试的正确请求可能会被遗弃,数据返回到被客户端放弃的第一次失败请求上。
删除阶段 可能客户端主动断开,也可能服务端主动断开。
四次挥手:
以客户端主动发起断开连接为例
1、第一次挥手:客户端发送FIN =1 给服务端,表示我没数据发了,你还有没有数据发?没数据就👋🏻了
2、第二次挥手:服务器发送ACK = 1 表示我收到你的消息了,但是要不要关闭 我还要看一下数据还要不要发,先给你回个信,你先等一会
3、第三次挥手:服务端发送FIN = 1 表示我没数据了,你关吧
4、第四次挥手:客户端发送 ACK = 1 表示我关好了 你也关吧。
可能有人觉得第二次挥手是不是没有必要 可以将第二次跟第三次挥手结合到一个包发送这样效率不是更高吗,其实这里面也有一个问题存在就是,服务端接收到客户端发送的关闭请求后 并不会立即关闭,但是也不能客户端傻等着,必须要立即返回一个应答ack 表示信息收到,否则的话 客户端可能会重发该信息。
整体流程如下:
上面的传输 仅仅只是指的将数据通过协议栈组装成包,通过网卡转换为光或者电信号进行发送,而从网卡到服务器这段,则是需要整个互联网的协助。比如我们在weWork发送的一条信息, 它的旅程应该是在被组装成包之后,首先会通过ip找到最近的路由器,也就是weWork的路由器,weWork的路由器再会根据包里面目标地址的ip查找到下一个路由地址 并覆盖掉包里面之前的MAC地址(也可以称为改写),就这样通过以太网依次传递直到发送到最终目的地。
操作跟客户端相反,由网卡接收到光或者电信号,并将其转换为数字信号0跟1。转换完成后会检查包的格式,有没有被分片,及是否自己为接收方等等信息。
如果都符合的话,数据会被交到tcp模块进行处理,根据ip port等信息确定该数据是传输给哪个套接字的,找到后将数据read到应用程序。
⑶ 计算机网络的连接方式是什么
1、局域网:
所谓局域网,那就是在局部地区范围内的网络,它所覆盖的地区范围较小。局域网在计算机数量配置上没有太多的限制,少的可以只有两台,多的可达几百台。
2、城域网:
这种网络一般来说是在一个城市,但不在同一地理小区范围内的计算机互联。这种网络的连接距离可以在10 ̄100公里,它采用的是IEEE802.6标准。MAN与LAN相比扩展的距离更长,连接的计算机数量更多,在地理范围上可以说是LAN网络的延伸。
3、广域网:
这种网络也称为远程网,所覆盖的范围比城域网(MAN)更广,它一般是在不同城市之间的LAN或者MAN网络互联,地理范围可从几百公里到几千公里。因为距离较远,信息衰减比较严重,所以这种网络一般是要租用专线,通过IMP(接口信息处理)协议和线路连接起来,构成网状结构。
(3)网络是通过什么连接传输的扩展阅读
商业运用
1、主要是实现资源共享最终打破地理位置束缚,主要运用客户-服务器模型。
2、提供强大的通信媒介。如:电子邮件(E-mail)、视频会议。
3、电子商务活动。如:各种不同供应商购买子系统,然后在将这些部件组装起来。
4、通过Internet与客户做各种交易。如:书店、音像在家里购买商品或者服务。
⑷ 无论使用计算机做什么,都离不开数据的传输,互联网是怎样传输数据的
无论使用计算机做什么,都离不开数据的传输。在上网的时候,浏览一个网页,网页服务器要把网页的数据发给你;发电子邮件,你的计算机要把邮件的数据发给电子邮件服务器,电子邮件服务器还要把这些数据发给接收者的计算机;看一段视频,视频的数据也要通过网络传输到用户的计算机。
在这个信息爆炸的时代,每天都有庞大的数据在网络上流通,互联网线路的繁忙程度可能并不亚于世界上最繁忙的十字路口。
总结:为了保证全世界数十亿台计算机中的任意两台之间都可以建立联系,在互联网上传输数据绝不是一件很简单的事情,需要做很多工作才可以使这个迷宫一样复杂的交通系统每天都正常运转。
⑸ 网络是怎样连接的-用电信号传输TCP/IP 数据
connect是一个抽象概念,不是实际存在的。
三次握手就是connect的过程,目的是为了交换 序号初始值。
发送方的数据如果比较大,就需要进行 拆包 发送。为了能让接收方还原包的顺序,每个包都有一个 序列号 ,第一包的数列号就是在connect过程初始化的(第一包的序列号不是1的原因是为了安全性)。
ACK机制 保证接收方一定能收到发送方的数据,如果发送的包有丢失,超时未确认,发送方会重新发送没确认的包的数据。接收方可能收到 重复 的数据,但是因为我们有序列号,所以接收方可以知道包是否是重复,如果是重复的就会自动丢弃掉。
TCP的头部 就是存放这些控制数据的(序列号、ACK号等)。
IP头部存放了目标的IP地址,但是通常目标服务在比较远的地方,和发送方不是直连的,这就需要进行路由,通过多个路由节点,接力传输,把数据送达目标服务。就像发快递一样 ,IP就是快递的收货地址。
路由节点收数据的时候是不认IP地址的,只认MAC地址,所以为了把数据路由到下一个节点,需要添加 MAC头部 ,路由过程中MAC地址会被频繁的修改。
整体过程是通过 路由表 ,知道下一个路由节点的IP,然后通过 ARP协议 获取这个路由节点的MAC地址,把目标MAC地址写到 MAC头部 中,直到数据包到达目的地。
⑹ internet是如何与其他网络连接的
internet是通过光纤将家庭网络、企业网络、数据中心连接到运营商的接入网。将来自接入网的涓涓细流汇聚成超大流量,使用更高速光纤链路将其传输到核心交换网,在那里按流量的目的地,将其分发到世界各个角落。
现今是互联网时代,每秒钟数以百万计的电子邮件,点击和搜索,对话通过万维网发生,互联网几乎无处不在,人们常常错误地以为互联网流量是空中发生的,毕竟我们的移动设备并没有导线连接到任何设备上。
然而通过卫星进行传送的人类交互活动占比不到1%,相比通过铁塔传送的信号,卫星信号似乎更加让人印象深刻。
互联网可以说是现代世界最重要的资源,然而它又是实际存在的,并且相当脆弱。别再以为互联网都是空中传播的,它存在于我们的脚下,通过复杂的水下和地下电缆连接到巨大的数据单元,它的功能非常强大可以回忆起任何节点发生的信息。
相关资料
互联网的工作是将信息从A点传送到B点,这些连接点就是IP地址,也是鉴别世界各地的唯一代码,当你连接到互联网,可以网络输入“我的IP地址”,搜索引擎将会告诉你你连接到的IP和具体位置。
信息从服务器输入和输出通常都会穿越海洋,我们几乎完全依靠电缆进行互联网通信,因为他们比卫星更快,更便宜。但铺设和维修过程相当繁琐。如果水下电缆是点对点铺设的,那么电缆长度相当于从地球到月亮再返回到地球,并且再绕着地球赤道转三圈,这个长度相当惊人。
最长的电缆长约38600公里,它从德国延伸到韩国,再延伸到澳大利亚,沿途会经过39个陆地点。第一根洲际大陆的电缆铺设于1859年,从爱尔兰通往纽芬兰。
⑺ 网络是通过什么传递信息的
进入因特网的电脑都遵循着一个称为TCP/IP的传递信息的规则。在发送信息时,先把信息分成一个个的小包,在小包上标明要接收信息的计算机的“门牌号码”,即IP地址。然后由网络中的称做路由器的“指挥官”,根据“门牌号码”确定这些信息小包传送的路径。当信息小包传送到接收的计算机后,小包合并成原来信息的模样,这样就完成了信息的传递。
什么是网络传播,这是关系到网络传播学的任务和研究对象的首要问题。
在回答什么是网络传播之前,首先需要研讨什么是传播。许多学者对于传播作过种种描述和解释,有的把它说成是“信息共享”,有的把它说成是“劝服影响”,也有的把它说成是“刺激反应”,还有人认为,传播是人类传递或交流信息的社会性行为;等等。郭庆光教授在其新着《传播学教程》中认为:“所谓传播,即社会信息的传递或社会信息系统的运行”。
那么何谓网络传播?
中国现代媒体委员会常务副主任诗兰认为,网络传播有三个基本的特点:全球性、交互性、超文本链接方式。因此,其给网络传播下的定义是:以全球海量信息为背景、以海量参与者为对象,参与者同时又是信息接收与发布者并随时可以对信息作出反馈,它的文本形成与阅读是在各种文本之间随意链接、并以文化程度不同而形成各种意义的超文本中完成的(《国际新闻界》2000年第6期第49页)。
有学者认为“网络传播”是20世纪90年代出现于传播学中的一个新名词,是相对三大传播媒体即报纸、广播、电视之外的新传播途径和方式,是以多媒体、网络化、数字化技术为核心的国际互联网络,也被称作网络传播,是现代信息革命的产物[1] )。
综合来说,所谓网络传播其实就是指通过计算机网络的人类信息(包括新闻、知识等信息)传播活动。在网络传播中的信息,以数字形式存贮在光、磁等存贮介质上,通过计算机网络高速传播,并通过计算机或类似设备阅读使用。网络传播以计算机通信网络为基础,进行信息传递、交流和利用,从而达到其社会文化传播的目的。网络传播的读者人数巨大,可以通过互联网高速传播。
⑻ 网络数据靠什么传输的
网络传输介质是网络中发送方与接收方之间的物理通路,它对网络的数据通信具有一定的影响。常用的传输介质有:双绞线、同轴电缆、光纤、无线传输媒介。