导航:首页 > 网络安全 > 网络中如何能直接通信

网络中如何能直接通信

发布时间:2023-01-31 00:24:05

❶ 网络通信

我们要理解网络中进程如何通信,得解决两个问题:
a、我们要如何标识一台主机,即怎样确定我们将要通信的进程是在那一台主机上运行。
b、我们要如何标识唯一进程,本地通过pid标识,网络中应该怎样标识?
解决办法:
a、TCP/IP协议族已经帮我们解决了这个问题,网络层的“ip地址”可以唯一标识网络中的主机
b、传输层的“协议+端口”可以唯一标识主机中的应用程序(进程),因此,我们利用三元组(ip地址,协议,端口)就可以标识网络的进程了,网络中的进程通信就可以利用这个标志与其它进程进行交互

以UDP传输为例:

1、物理层:
解决两个硬件之间怎么通信的问题,常见的物理媒介有光纤、电缆、中继器等。它主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。

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

2、数据链路层:
计算机网络中由于各种干扰的存在,物理链路是不可靠的。该层的主要功能就是:通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路。

它的具体工作是接收来自物理层的位流形式的数据,并封装成帧,传送到上一层;同样,也将来自上层的数据帧,拆装为位流形式的数据转发到物理层。这一层的数据叫做帧。

3、网络层:
计算机网络中如果有多台计算机,怎么找到要发的那台?如果中间有多个节点,怎么选择路径?这就是路由要做的事。

该层的主要任务就是:通过路由选择算法,为报文(该层的数据单位,由上一层数据打包而来)通过通信子网选择最适当的路径。这一层定义的是IP地址,通过IP地址寻址,所以产生了IP协议。

4、传输层:
当发送大量数据时,很可能会出现丢包的情况,另一台电脑要告诉是否完整接收到全部的包。如果缺了,就告诉丢了哪些包,然后再发一次,直至全部接收为止。

简单来说,传输层的主要功能就是:监控数据传输服务的质量,保证报文的正确传输。

5、会话层:
虽然已经可以实现给正确的计算机,发送正确的封装过后的信息了。但我们总不可能每次都要调用传输层协议去打包,然后再调用IP协议去找路由,所以我们要建立一个自动收发包,自动寻址的功能。于是会话层出现了:它的作用就是建立和管理应用程序之间的通信。

6、表示层:
表示层负责数据格式的转换,将应用处理的信息转换为适合网络传输的格式,或者将来自下一层的数据转换为上层能处理的格式。

7、应用层:
应用层是计算机用户,以及各种应用程序和网络之间的接口,其功能是直接向用户提供服务,完成用户希望在网络上完成的各种工作。前端同学对应用层肯定是最熟悉的。

应用层(应用,表示,会话):TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 等等
传输层:TCP,UDP
网络层:IP,ICMP,OSPF,EIGRP,IGMP
数据链路层:SLIP,CSLIP,PPP,MTU
重要的 协议族介绍:

IP 定义了 TCP/IP 的地址,寻址方法,以及路由规则。现在广泛使用的 IP 协议有 IPv4 和 IPv6 两种:IPv4 使用 32 位二进制整数做地址,一般使用点分十进制方式表示,比如 192.168.0.1。
IP 地址由两部分组成,即网络号和主机号。故一个完整的 IPv4 地址往往表示 为 192.168.0.1/24 或192.168.0.1/255.255.255.0 这种形式。
IPv6 是为了解决 IPv4 地址耗尽和其它一些问题而研发的最新版本的 IP。使用 128 位 整数表示地址,通常使用冒号分隔的十六进制来表示,并且可以省略其中一串连续的 0,如:fe80::200:1ff:fe00:1。
目前使用并不多!

http协议对应于应用层,tcp协议对应于传输层,ip协议对应于网络层。
TPC/IP【TCP(传输控制协议)和IP(网际协议)】,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:“我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己定义应用层协议。WEB使用HTTP协议作应用层协议,以封装HTTP 文本信息,然后使用TCP/IP做传输层协议将它发到网络上。”
术语TCP/IP代表传输控制协议/网际协议,指的是一系列协议。“IP”代表网际协议,TCP和UDP使用该协议从一个网络传送数据包到另一个网络。把IP想象成一种高速公路,它允许其它协议在上面行驶并找到到其它电脑的出口。TCP和UDP是高速公路上的“卡车”,它们携带的货物就是像HTTP,文件传输协议FTP这样的协议等。
你应该能理解,TCP和UDP是FTP,HTTP和SMTP之类使用的传输层协议。虽然TCP和UDP都是用来传输其他协议的,它们却有一个显着的不同:TCP提供有保证的数据传输,而UDP不提供。这意味着TCP有一个特殊的机制来确保数据安全的不出错的从一个端点传到另一个端点,而UDP不提供任何这样的保证。

URL的全称是Uniform Resource Locator(统一资源定位符)
通过1个URL,能找到互联网上唯一的1个资源。
URL就是资源的地址、位置,互联网上的每个资源都有一个唯一的URL。

URL的基本格式 =协议://主机地址/路径
协议:不同的协议,代表着不同的资源查找方式、资源传输方式
主机地址:存放资源的主机(服务器)的IP地址(域名)
资源在主机(服务器)中的具体位置

1、HTTP协议的几个重要概念
1.连接(Connection):一个传输层的实际环流,它是建立在两个相互通讯的应用程序之间。
2.消息(Message):HTTP通讯的基本单位,包括一个结构化的八元组序列并通过连接传输。
3.请求(Request):一个从客户端到服务器的请求信息包括应用于资源的方法、资源的标识符和协议的版本号
4.响应(Response):一个从服务器返回的信息包括HTTP协议的版本号、请求的状态(例如“成功”或“没找到”)和文档的MIME类型。
5.资源(Resource):由URI标识的网络数据对象或服务。
6.实体(Entity):数据资源或来自服务资源的回映的一种特殊表示方法,它可能被包围在一个请求或响应信息中。一个实体包括实体头信息和实体的本身内容。
7.客户机(Client):一个为发送请求目的而建立连接的应用程序。
8.用户代理(Useragent):初始化一个请求的客户机。它们是浏览器、编辑器或其它用户工具。
9.服务器(Server):一个接受连接并对请求返回信息的应用程序。
10.源服务器(Originserver):是一个给定资源可以在其上驻留或被创建的服务器。
11.代理(Proxy):一个中间程序,它可以充当一个服务器,也可以充当一个客户机,为其它客户机建立请求。请求是通过可能的翻译在内部或经过传递到其它的服务器中。一个代理在发送请求信息之前,必须解释并且如果可能重写它。
代理经常作为通过防火墙的客户机端的门户,代理还可以作为一个帮助应用来通过协议处理没有被用户代理完成的请求。
12.网关(Gateway):一个作为其它服务器中间媒介的服务器。与代理不同的是,网关接受请求就好象对被请求的资源来说它就是源服务器;发出请求的客户机并没有意识到它在同网关打交道。
网关经常作为通过防火墙的服务器端的门户,网关还可以作为一个协议翻译器以便存取那些存储在非HTTP系统中的资源。
13.通道(Tunnel):是作为两个连接中继的中介程序。一旦激活,通道便被认为不属于HTTP通讯,尽管通道可能是被一个HTTP请求初始化的。当被中继的连接两端关闭时,通道便消失。当一个门户(Portal)必须存在或中介(Intermediary)不能解释中继的通讯时通道被经常使用。
14.缓存(Cache):反应信息的局域存储。

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

手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。建立起一个TCP连接需要经过“三次握手”:

第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;

第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。握手完成后,两台主机开始传输数据了。

什么要三次握手?

如果只有一次握手,Client不能确定与Server的单向连接,更加不能确定Server与Client的单向连接;
如果只有两次握手,Client确定与Server的单向连接,但是Server不能确定与Client的单向连接;
只有三次握手,Client与Server才能相互确认双向连接,实现双工数据传输。

握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。断开连接时服务器和客户端均可以主动发起断开TCP连接的请求,断开过程需要经过“四次挥手”。

第一次挥手:
Client发送一个FIN,用来关闭Client到Server的数据传送,Client进入FIN_WAIT_1状态。
第二次挥手:
Server收到FIN后,发送一个ACK给Client,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号),Server进入CLOSE_WAIT状态。
第三次挥手:
Server发送一个FIN,用来关闭Server到Client的数据传送,Server进入LAST_ACK状态。
第四次挥手:
Client收到FIN后,Client进入TIME_WAIT状态,接着发送一个ACK给Server,确认序号为收到序号+1,Server进入CLOSED状态,完成四次挥手。

为什么要四次挥手?

“三次握手”的第二次握手发送SYN+ACK回应第一次握手的SYN,但是“四次挥手”的第二次挥手只能发送ACK回应第一次挥手的FIN,因为此时Server可能还有数据传输给Client,所以Server传输数据完成后才能发起第三次挥手发送FIN给Client,等待Client的第四次挥手ACK。

http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。HTTPS其实是有两部分组成:HTTP +SSL/ TLS,也就是在HTTP上又加了一层处理加密信息的模块。采用HTTPS协议的服务器必须要有一套数字证书,可以自己制作,也可以向组织申请。区别就是自己颁发的证书需要客户端验证通过,才可以继续访问,而使用受信任的公司申请的证书则不会弹出提示页面(startssl就是个不错的选择,有1年的免费服务)。这套证书其实就是一对公钥和私钥。SSL介于应用层和TCP层之间。应用层数据不再直接传递给传输层,而是传递给SSL层,SSL层对从应用层收到的数据进行加密,并增加自己的SSL头。

1.怎么解决tcp拆包和黏包的问题
粘包、拆包发生原因
发生TCP粘包或拆包有很多原因,现列出常见的几点,可能不全面,欢迎补充,
1、要发送的数据大于TCP发送缓冲区剩余空间大小,将会发生拆包。
2、待发送数据大于MSS(最大报文长度),TCP在传输前将进行拆包。
3、要发送的数据小于TCP发送缓冲区的大小,TCP将多次写入缓冲区的数据一次发送出去,将会发生粘包。
4、接收数据端的应用层没有及时读取接收缓冲区中的数据,将发生粘包。
等等。

粘包、拆包解决办法
解决问题的关键在于如何给每个数据包添加边界信息,常用的方法有如下几个:

1、发送端给每个数据包添加包首部,首部中应该至少包含数据包的长度,这样接收端在接收到数据后,通过读取包首部的长度字段,便知道每一个数据包的实际长度了。
2、发送端将每个数据包封装为固定长度(不够的可以通过补0填充),这样接收端每次从接收缓冲区中读取固定长度的数据就自然而然的把每个数据包拆分开来。
3、可以在数据包之间设置边界,如添加特殊符号,这样,接收端通过这个边界就可以将不同的数据包拆分开。
等等。

2.upd丢包
1、接收端处理时间过长导致丢包:调用recv方法接收端收到数据后,处理数据花了一些时间,处理完后再次调用recv方法,在这二次调用间隔里,发过来的包可能丢失。对于这种情况可以修改接收端,将包接收后存入一个缓冲区,然后迅速返回继续recv。

2、发送的包巨大丢包:虽然send方法会帮你做大包切割成小包发送的事情,但包太大也不行。例如超过50K的一个udp包,不切割直接通过send方法发送也会导致这个包丢失。这种情况需要切割成小包再逐个send。

3、发送的包较大,超过接受者缓存导致丢包:包超过mtu size数倍,几个大的udp包可能会超过接收者的缓冲,导致丢包。这种情况可以设置socket接收缓冲。以前遇到过这种问题,我把接收缓冲设置成64K就解决了。

int nRecvBuf=32*1024;//设置为32K

setsockopt(s,SOL_SOCKET,SO_RCVBUF,(const char*)&nRecvBuf,sizeof(int));

4、发送的包频率太快:虽然每个包的大小都小于mtu size 但是频率太快,例如40多个mut size的包连续发送中间不sleep,也有可能导致丢包。这种情况也有时可以通过设置socket接收缓冲解决,但有时解决不了。所以在发送频率过快的时候还是考虑sleep一下吧。

5、局域网内不丢包,公网上丢包。这个问题我也是通过切割小包并sleep发送解决的。如果流量太大,这个办法也不灵了。总之udp丢包总是会有的,如果出现了用我的方法解决不了,还有这个几个方法: 要么减小流量,要么换tcp协议传输,要么做丢包重传的工作。

一个是客户端发送过快,网络状况不好或者超过服务器接收速度,就会丢包。

第二个原因是服务器收到包后,还要进行一些处理,而这段时间客户端发送的包没有去收,造成丢包。

那么需要做的是

客户端降低发送速度,可以等待回包,或者加一些延迟。服务器部分单独开一个线程,去接收UDP数据,存放在一个缓冲区中,又另外的线程去处理收到的数据,尽量减少因为处理数据延时造成的丢包。

有两种方法解决UDP 丢包的问题:

方法一:重新设计一下协议,增加接收确认超时重发。(推荐)

方法二:在接收方,将通信和处理分开,增加个应用缓冲区;如果有需要增加接收socket的系统缓冲区。(本方法不能从根本解决问题,只能改善)

https://jiahao..com/s?id=1654225744653405133&wfr=spider&for=pc
https://www.jianshu.com/p/066d99da7cbd
https://jiahao..com/s?id=1654225744653405133&wfr=spider&for=pc
https://blog.csdn.net/qq_31337311/article/details/80781273
https://www.cnblogs.com/jiangzhaowei/p/8996810.html
http://blog.sina.com.cn/s/blog_d2bb5eff0102wbq2.html

❷ internet上许多复杂网络和不同类型计算机之间能够互相通信的基础是什么

许多不同的复杂网络和许多不同类型的计算机赖以互相通信的基础只有TCP/IP协议。OSI/RM只是参考模型,没有真正的应用到网络中。所以异构网要通信,必须要安装TCP/IP协议。

如果是填空题,填TCP/IP协议。

TCP/IP提供点对点的链接机制,将数据应该如何封装、寻址、传输、路由以及在目的地如何接收,都加以标准化。它将软件通信过程抽象化为四个抽象层,采取协议堆栈的方式,分别实现出不同通信协议。协议族下的各种协议,依其功能不同,被分别归属到这四个层次结构之中。

(2)网络中如何能直接通信扩展阅读:

在对等进程利用协议进行通信时,实际上并不是直接将数据从一台机器的第N层传送到另一台机器的第N层,而是每一层都把数据连同该层的控制信息打包交给它的下一层,它的下一层把这些内容看做数据,再加上它这一层的控制信息一起交给更下一层,依此类推,直到最下层。

最下层是物理介质,它进行实际的通信。相邻层之间有接口,接口定义下层向上层提供的原语操作和服务。相邻层之间要交换信息,对等接口必须有一致同意的规则。层和协议的集合被称为网络体系结构。

TCP/IP协议不依赖于任何特定的计算机硬件或操作系统,提供开放的协议标准,即使不考虑Internet,TCP/IP协议也获得了广泛的支持。所以TCP/IP协议成为一种联合各种硬件和软件的实用系统。

TCP/IP协议并不依赖于特定的网络传输硬件,所以TCP/IP协议能够集成各种各样的网络。用户能够使用以太网、令牌环网、拨号线路、X.25网以及所有的网络传输硬件。

❸ 请问怎样实现局域网之间的通信

1:HUB中采用CSMA/CD技术
任何一太主机发数据之前要冲突检测,有冲突不发包,无冲突,则发包,各个主机都能接受到该数据,然后拆分得到物理地址再进行比对,是不是跟自己的物理地址相匹配,是就收下,否则丢弃

2:switch(交换机)中采用 存储转发机制
根据MAC地址和对应端口表转发,如果表中有对应目的地的MAC则不用广播直接,通过交换机转发不用广播

❹ 计算机网络从 IP 到 IP 的通信是怎么完成的

开发离不开计算机网络,计算机网络很重要,但不是所有的网络知识对软件开发都是有用的。

我们知道,网络是分层的,OSI 体系中分了 7 层,但实际上使用的 TCP/IP 体系中分了 4 层,学习的时候为了方便,我们还是把物理层、数据链路层分开学的,所以是 5 层。

开发时我们会用 IP、TCP、HTTP 等协议来完成计算机之间的通信,网页运行时还会涉及到 DNS 等协议,这些协议都是在网络层之上的,也就是基于 IP 到 IP 的传输来完成各种协议的数据通信。

那之下的部分呢?IP 到 IP 的通信是如何实现的?

这就涉及到物理层、数据链路层还有网络层的知识了,这些知识对实际的开发没啥用,因为代码里已经默认了 IP 和 IP 之间是可以通信的,但是了解这些可以让我们对网络有一个全面的理解。这部分涉及到网络硬件、涉及到通信原理,还是挺有意思的。

这篇文章就浅谈下 IP 和 IP 之间的通信的知识。

把不同的计算机连接起来,可以做数据通信,可以共享软件、硬件,这就叫做计算机网络。

这种连接方式有很多种,自然也就有不同的网络。比如拨号上网,是利用电话通信的网络来传输数据的,就像打电话一样,所以叫拨号,只不过传输的数据不是通话数据。比如卫星上网,是利用卫星信号来传输数据,这也是一种网络。

这两种都是用的现有的网络来实现计算机通信。而我们自己组建的网络都是用网线连接的,这种是最常见的网络。

比如这样:

这种通过一根线把所有的计算机连接起来的网络连接方式叫做以太网。

在讲以太网之前,不知道大家是否已经感受到了网络分层的好处:

不管是利用电信网络的拨号上网,还是利用卫星通信的卫星上网,或者是用网线连接起来的以太网,这些不同结构的网络都能很自然的融合在一起,就是因为做了很好的分层,只要实现了 IP 协议,那么不管网络是怎么实现的,都能实现更上层协议的通信。

这就像软件开发领域的面向接口编程的思想,只要你能实现 IP 到 IP 的通信,不管你是怎么传输的数据,都可以。

多台计算机已经用网线连接起来了,那怎么通信呢?

直接通过这条网线传递数据就行,只不过现在是一个发其余的都能接收到,要让目标计算机能接收,那就得标识下目的地址是啥,所以以太网的数据帧格式是这样的:

除了数据外,额外加上了目的地址、原地址等信息。

这样每台计算机接收到网络传过来的数据之后,判断下是否目的地址是自己,是就接收,否则丢弃。这样就实现了网络通信。

这就是一个网络了?就这么简单?

这确实是一个小型网络,但还不完善。如果多台计算机同时发消息怎么办,数据不就混在一块了?

所以要做是否冲突的检测,现在以太网用的方式是这样:想要通过网络发消息时,先检测下网络中有没有电信号,没有的话就发,有的话就等待 1.x 秒,x 是随机的,如果到了时间还有冲突,那就等待 2.x 秒、4.x 秒、8.x 秒,通过这样的方式来避免冲突,实现准确的通信,这叫做“指数退避”。

这样确实不会冲突了,但是还有问题,如果计算机连了很多,虽然能准确的通信,但时不时就冲突的话效率也太低了。

能不能减少冲突呢?

连在一起的以太网的计算机因为是广播通信的,所以可能可能冲突,这叫做一个“冲突域”。如果能把大的冲突域给拆小,那不就能减少冲突的概率了?

这就是交换机做的事情了:

几台电脑之间加一个交换机来隔开,这样传输消息的时候,如果是同一个小网段内的通信,会直接传给目标计算机,不会传到其他网段里去,本网段没有该 mac 地址的时候才传到其他网段,这样就 把大的网络分成了一个个小的网段,减少了冲突的概率,提高了网络传输效率,这就是交换机的意义。

这样,我们就组建了一个以太网。

现在一个个的网络都是分散的,不管是以太网,还是用电信网络连接的网络,或者是卫星连接的网络,那自然有需求把这些分散的网络给连接起来,这就是互联网,也就是把网络连接起来的网络。

互联网也有很多,比如军队的各种网络会建立一个互联网,教育的各种网络会建立互联网,互联网和互联网之间还可以连接,最大的互联网就是因特网 internet,大到全世界的很多网络都会连入的那种。但也有的互联网是不接入 internet 的,比如军用的互联网。

那这些网络之间是怎么标识和连接的呢?

标识网络自然就需要编号,并且网络内的主机也需要编号,也就是需要指定网络号 + 主机号,这就是 IP 地址。

IP 地址最开始是 32 位的,叫做 IPv4(后来扩充成了 128 位的,叫做 IPv6)。

比如这样就是一个 IPv4 的地址:

为了好记,我们把它分为了四段,每段 8 位,就成了这样:

210.73.140.2

这分为 4 段的 32 位地址里有网络号也有主机号。如果把第一段当作网络号,那剩下的三段就是主机号,可以标识 1600 多万台计算机,如果把前两段当作网络号,那可以标识 6 万多台计算机,如果把前三段当作网络号,那只有最后一段用于标识主机,可以标识 254 台计算机。这样就分为了 ABC 三类网络。

讲完了 IP 地址,再回来讲最大的互联网 internet。

internet 是连接全球很多网络的互联网,那自然有个主干网,然后下面接入各个国家的网络。每个国家都有专门的接入 internet 的网络提供商(ISP internet service provider),比如中国有联通、移动、铁通等 ISP,由他们接入 internet,我们再接入他们的网络。

那网络之间是怎么连接的呢?

就是通过路由器 路由器连接多个网络,负责根据 IP 地址选择把数据传到某个网络

很多同学分不清路由器和交换机的区别,其实很好区分:交换机是网络内部隔离冲突域、提高网络效率用的,根据 mac 地址转发消息。路由器是负责在不同的网络之间转发数据,根据 IP 地址确定网络和主机然后转发。

IP 地址里记录了网络号和主机号,所以根据网络号就能确定是哪个网络,那怎么根据主机号确定哪台主机呢?

在这个网络里广播一次不就行了?把 IP 地址传递给网络的每一台主机,如果是自己的,那就返回自己的 mac 地址,这样路由器就知道该把消息传给谁了。这种从 IP 到 mac 地址的查询过程叫做 ARP(Address Resolution Protocol 地址解析)协议。

至此,我们就完成了从 IP 到 IP 的通信,再上面的协议我们就比较熟了,也就是 TCP、HTTP 这些,这些是我们软件开发整天用的协议。

计算机网络是分层的,OSI 体系结构分了 7 层,实际用的 TCP/IP 体系结构分了 4 层,为了学习方便我们还是作为 5 层来看。

分层的好处就是每一层都可以灵活的替换实现方案,比如只要你实现了 IP 到 IP 的通信,不管你是卫星连接的网络、电信连接的网络还是以太网,都可以,对上层的各种协议没影响。

卫星、电话网络等都是已有的网络,我们自己组建的网络一般都是按照以太网的方式,也就是一根网线连接所有计算机的方式,叫做总线式。

以太网内是广播通信的,为了避免冲突,会通过指数退避的方式来发消息,但这会降低传输效率,所以引入了交换机来隔离冲突域,也就把网络分成了不同的网段,交换机遇到同一网段的通信是不会传递到其他网段的,这样就减少了冲突的概率。

网络和网络之间连接起来就叫做互联网,互联网有很多种,全球最大的互联网是 internet,但也不是所有的互联网都在 internet 里,比如军用互联网就不会连入 internet。

internet 有主干网来连接各个国家和地区的网络,每个国家都有负责接入 internet 的互联网服务提供商 ISP,比如中国的联通、移动、铁通等运营商。

网络的标识是通过 IP,也就是网络号 + 主机号构成,然后由路由器负责通过 IP 来做网络之间的数据转发。

路由器实现转发要先根据 IP 种的主机号来查出 mac 地址,对应的查询协议叫做 ARP 协议,也是通过广播的方式实现的。

这样就实现了 internet 上任意两台主机的 IP 到 IP 的通信。

我们平时软件开发时用的 IP、TCP、HTTP、DNS 等协议,都是在这些基础之上实现的。网络层之下的知识,确实对我们开发没啥帮助,但了解下还是挺有意思的。

❺ 计算机是如何进行网络通信的

网络通信的实现
在发送端(即一个发送终端,其实也是一台计算机)首先要把传送的信息(如话音,图像)变成电信号,然后调制到激光器发出的激光束上,使光的强度随电信号的幅度(频率)变化而变化;转换成数字信号(数字信号:二位制010101010),然后通过调制送入光纤,并通过光纤发送出去到接收端(另一台计算机),先解调,然后DA转换,最后信号放大在接收端,检测器收到光信号后把它变换成电信号,经解调后恢复原信息。其传导送度解决了多信号数字传输在一根细光纤下完成。
光速传输,其传输容量非常之大,是金属导体无法相比的,在光纤的两端分别都装有“光猫”进行信号转换。 其特点是传输容量大,传输质量好,损耗小,互不干扰,中继距离长等。光纤传输使用的是波分复用,即是把小区里的多个用户的数据分别调制成不同波长的光信号在一根光纤里传输。
我们看到的接到电脑上的细铜线是接收端变为电信号后的末端接口传输,已经不是光纤部分了。
我们常听说到“服务器”,服务器是一个能够存储大量信息的中转装置,其实也是一台功能强大的计算机,(局域网用小型服务器和我们台式机的主机箱外观它基本一样,是通过路由器分线接入的)。把连接到上面的计算机所发送到出的信号(文本、音讯、图像等)按照一定的地址存储起来,当某个计算机要找某个内容的文件时,识别系统(浏览器)就可以根据关键词找到地址并链接打开。所有客户终端都要经过服务器来调取和存入信息,并由服务器归类分装分发。
计算机处理的信号都是数字,即 0 和 1 .举个简单的例子 汉字“网”在计算机里只是一组数字假如是:1000110010100110.这样一组代码,当你用键盘输入“网”字时,计算机是按照一组数字处理并传送的,另一台计算机收到这组数字后,经转换显示还原为“网”(人可以识别的记号)就可以通讯了。其它如音讯、图像也是一样的。另外一些发达国家已经开通数字电视的传送,由于数字不受干扰,传送信息不会丢失,电视图像逼真。

❻ 能够访问互联网的任意两台主机之间能否直接通信为什么

1 能够访问互联网的任意两台主机之间不一定能够直接通信的
2 假如两台能够访问互联网的主机,在一个局域网下,也不一定能够直接通信,因为交换机端口之间可能有端口隔离,vlan,访问策略等屏蔽,因此这两个不一定能够直接通信
3 假如两台能够直接访问互联网的主机,在不同的局域网里,也不一定能够直接通信,因为两台主机之间可能有防火墙策略,防火墙策略决定了他们不一定能够直接通信
4 假如两台能够直接访问互联网的主机,在不同的局域网里,在防火墙策略允许他们通信,并且彼此之间有VPN,专用通信软件的等连接,这个是可以直接通信的
5 您学废了吗

❼ 网络通信的方式有那些

1、NETBEUI

NETBEUI为IBM开发的非路由协议,用于携带NETBIOS通信。

2、IPX/SPX

IPX为NOVELL用于NETWARE客户端/服务器的协议群组,避免了NETBEUI的弱点。但是,带来了新的不同弱点。

IPX具有完全的路由能力,可用于大型企业网。它包括32位网络地址,在单个环境中允许有许多路由网络。

3、TCP/IP

每种网络协议都有自己的优点,但是只有TCP/IP允许与Internet完全的连接。TCP/IP为在60年代由麻省理工学院和一些商业组织为美国国防部开发的,即便遭到核攻击而破坏了大部分网络,TCP/IP仍然能够维持有效的通信。

4、RS-232-C

RS-232-C为OSI基本参考模型物理层部分的规格,它决定了连接器形状等物理特性、以0和1表示的电气特性及表示信号意义的逻辑特性。

5、RS-449

RS-449为1977年由EIA发表的标准,它规定了DTE和DCE之间的机械特性和电气特性。RS-449是想取代RS-232-C而开发的标准,但是几乎所有的数据通信设备厂家仍然采用原来的标准,所以RS-232-C仍然是最受欢迎的接口而被广泛采用。

6、HDLC(高级数据链路控制规程)

HDLC为可靠性高,高速传输的控制规程。

7、SDLC(同步数据链路控制)

IBM公司制定的协议,并成为SNA的数据链路控制层协议。实际上也包含于HDLC中。

8、FDDI(光纤分布式数据接口)

FDDI的传输速度为100Mbps,传输媒体为光纤,是令牌控制的LAN。

9、SNMP(简单网络管理协议)

TCP/IP协议集中的网络管理协议。



(7)网络中如何能直接通信扩展阅读

根据网络条件选择:如网络存在多个网段或要通过路由器相连时,就不能使用不具备路由和跨网段操作功能的NetBEUI协议,而必须选择IPX/SPX或TCP/IP等协议。

尽量减少协议种类:一个网络中尽量只选择一种通信协议,协议越多,占用计算机的内存资源就越多,影响了计算机的运行速度,不利于网络的管理。

注意协议的版本:每个协议都有其发展和完善的过程,因而出现了不同的版本,每个版本的协议都有它最为合适的网络环境。在满足网络功能要求的前提下,应尽量选择高版本的通信协议。

协议的一致性:如果要让两台实现互联的计算机间进行对话,它们使用的通信协议必须相同。否则,中间需要一个“翻译”进行不同协议的转换,不仅影响了网络通信速率,同时也不利于网络的安全、稳定运行。

❽ 两台计算机直接网线相连可以通信吗如何做

双机互联一般有以下几种方法:

l 通过电缆线,利用串口或者并口实现双机互联。
l 利用两块网卡和双绞线实现双机互联。
l 利用USB口和特殊的USB连接线实现双机互联。
l 利用红外实现双机互联。
l 利用双Modem实现远程双机互联。
l 利用1394线实现双机互联。
l 无线双机互联。
直接电缆连接优缺点:
这种方式最大的优点是简单易行、成本低廉,无需购买新设备,只需花几元钱购买一段电缆就够了,最大限度地节约了投资。但是“直接电缆连接”由于电缆的长度有限,所以双机的距离不能太远,一般只能放置同一房间内;其次,两台计算机互相访问时需要频繁地重新设置主客机,非常麻烦;第三,计算机间的连接速率较慢,只适用于普通的文件传输,或简单的连机游戏。

利用串口(并口)电缆进行双机互联:
首先,准备连接电缆, 需串口线或并口线一根。电缆可以自己制作,其中9针对9针的串口线最简单,只需3根连线,采用2-3、3-2、5-5的方法焊接即可;9针对25针的串口线采用2-3、3-2、5-7的方法焊接;25针对25针的串口线采用2-3、3-2、7-7的方法焊接。并口线则需11根线相连,它在电脑配件市场比较常见,花费不足10元,也可自行制作。按照2-15、3-13、4-12、5-10、6-11、10-5、11-6、12-4、13-3、15-2、25-25的方法焊接即可。做好线后,将两机连接起来,可采取并口对并口,或串口对串口两种方式连接。并口连接速度较快,但两机距离不能超过5米;串口连接速度较慢,但电缆制作简单,两机距离可达10米。考虑到联机速度的需要,机器又处于同一办公室,宜尽量采用并口电缆连接。

现在开始软件的安装和配置。首先,安装直接电缆连接。在两台机器上分别打开“控制面板→添加/删除程序→Windows安装程序”选项,选择“通信”中的“直接电缆连接”项。完成后在“开始”菜单的“附件”中会增加“直接电缆连接”的程序项。

其次进行网络参数设置。两机分别运行“直接电缆连接”程序,将性能更好的一台机器设为主机,选择【侦听】按钮,另一台设为客户机,选择【连接】按钮。此时,两台计算机都应将NetBEUI、IPX/SPX、TCP/IP协议全部安装,此外还需添加“Windows网络客户”和“文件与打印机共享”项。经过验证、登录过程(为简化操作,可不设口令),即可顺利实现双机互联。联机成功以后,可将该程序最小化,使其后台运行。在客户机的“查看主机”操作框里,可看到主机的所有共享资源。还可通过“映射”操作,将主机的共享目录设为本机的目录,这样可在“我的电脑”或“资源管理器”中像访问本机资源一样方便地访问主机。另外在客户机的“网上邻居”里,可看到和访问主机。由于“直接电缆连接”具有“单向性”,所以从主机的“网上邻居”是不能看到客户机的,也不能对客户机进行读写操作。需要时,可交换主机和客户机的设置。

利用网卡加双绞线实现双机互联的特点:
这是目前用得比较多的一种双机互联的方法,这种方法和其他互联方式相比,具有这样一些特点:

首先,可以真正实现双机互联,这种方法实现的互联可以实现局域网能实现的功能,而不仅仅是互相传递文件,在使用上,也和一个局域网的操作一样,可以很快上手,方便了用户;其次,速度比较快,比起使用电缆或者Modem实现的双机互联,这种方式数据传递的速度要快得多;再者,从投资上说,采用这种方式的投资比较大,但是考虑到今后的扩展,这些投资是可以保留的,比如扩大到一个小型局域网的时候,网卡仍然是必要的;从设置上说,这种方式比较麻烦,不如直接电缆连接简单,对于熟悉局域网的用户而言,由于设置和局域网的设置相同,因此也不会有多大的困难
利用网卡加双绞线实现双机互联:
首先将网卡插入计算机中适当的插槽中,并用螺丝将其充分固定,然后将一根双绞线的两个RJ-45头分别插入两个计算机的网卡接口,使两台计算机直接连接起来,中间不使用任何集线设备。此时,所需要的所有配件为:两块网卡、两个RJ45头、一段网线,以100Mbps网卡计算,总投资也不过百元左右,而连接速率最高却可达100Mb/s。有两点需特别注意:其一,用双绞线连接时,两机所配的网卡必须带有RJ-45口;其二,直接电缆双机互联的双绞线制作方法不同于普通接线制作方法,即要进行错线,应该按照一端为白橙1、橙2、白绿3、蓝4、白蓝5、绿6、白棕7、棕8,另一端为白绿3、绿6、白橙1、蓝4、白蓝5、橙2、白棕7、棕8的原则做线。

硬件连接好了,现在开始安装软件。在每台机器上将各自的网卡驱动程序安装好。然后安装通信协议,在Windows操作系统中一般提供了NetBEUI、TCP/IP、IPX/SPX兼容协议等3种通信协议,这3种通信协议分别适用于不同的应用环境。一般情况下,局域网只需安装NetBEUI协议即可,如需要运行联网游戏,则一般要安装IPX/SPX兼容协议;如要实现双机共享Modem上网的功能,需要安装TCP/IP协议。接下来分别输入每台计算机的计算机名和工作组名,注意两台机器的计算机名应该用不同名字来标识,而工作组名必须是相同的。重新启动计算机,设置共享资源,这样就可以实现两机之间的通信和资源共享了。

利用USB实现双机互联的特点:
使用USB线双机互联是最新的双机互联方法,它借助于专用的USB线通过两台计算机的USB口连接后再实现数据交换,不仅传输速率大大超越传统的串口/并口(最高可达6Mb/s,一般情况下也可超过4Mb/s),而且实现真正的即插即用。

它具有以下的特点:

(1)可提供高达6Mbps的传输速率。USB文件传输连接电缆可提供的传输速率比并口快500%,比串口快700%。

(2)能够检测到远程的PC,可以分别在两个窗口方便地剪切、拷贝、粘贴或拖拉文件。也可以把远程的文件在本地电脑的打印机进行打印。

(3)具有热插拔功能和远程唤醒功能,传输的长度为2~4.5米。

(4)系统要求低。Pentium 100MHz或更高,一个USB端口,支持Windows 95、OSR2.1、Windows 98、Windows 2000或Windows XP操作系统。

使用USB线实现双机互联:
只需要购买一根专用的USB联机线即可,由于USB可以热插拔,因此使用非常简单方便。在插上线以后,需要安装相应的应用程序才能实现功能,安装完成以后可以进行共享光驱、打印文件、运行程序等操作,和一般的双机互联不同的是,每一台机器都拥有对另一台机器的完全操作权利,而不管是否设置了共享。

利用红外线实现双机文件传输功能:
用红外线口也可以将两台电脑连接起来。红外线联机其实仍属于电缆连接的范畴,只不过省去了用于直接电缆连接的串行或并行电缆线。一般笔记本电脑都有红外口,台式电脑也可以用于红外线通信,但是需要另配一个红外线适配器。有了红外适配器,台式电脑可拥有与笔记本电脑一样的红外线通信功能。

首先必须正确安装台式电脑和笔记本电脑的红外线驱动程序。在Windows 98系统里红外线设备是即插即用设备,一般在BIOS里开启红外线功能后系统即可自动完成红外线驱动程序和红外线应用程序的安装。如不能自动安装,请查看红外线适配器的使用说明书或Windows 98系统的相关帮助文件。安装完成后,在任务栏用鼠标左键双击“红外线通信”图标打开“红外线监视器”程序,通过更改设置将其激活,使之处于搜索其他红外线设备的状态。

分别打开两台电脑的“红外线监视器”窗口,将台式电脑的红外线适配器对准笔记本电脑的红外线口,两个“红外线监视器”都会很快做出反应,并报告在有效区域内发现了对方,并列出通信对方的名称。这表明连接已经建立,可以进行数据传输了。Windows 98系统自带了一个红外数据传输应用程序,名为“红外线传输”,用户可以通过用鼠标左键双击“我的电脑”中的“红外线接收者”将其打开。利用这个程序可以进行常规的数据传输,单击【发送文件】按钮将文件发送出去,单击【已收到的文件】按钮来查看对方发过来的东西,简单易用,十分方便。上述的方法已经可以满足基本的数据互传需要,但是它只能发送数据或者被动地接收数据,而不能去主动地去寻找并获取自己想要的东西,因此还有一定的局限性。

❾ 计算机网络是怎样通信

你问的很笼统,简单来讲,计算机通讯需要协议,协议种类很多,现在我们经常使用的是TCP/IP协议,连接网络时,动态ip用户,计算机会向DHCP服务器发出请求,分配ip,ip就像我们的门牌号,通讯数据被按照协议格式打包,就像邮递员送邮件,给各个ip地址送去,同时各个ip地址的用户也向服务器发送数据包,数据包到达后,会按照格式解包,还原成数据信息,这就完成了双向通讯。

阅读全文

与网络中如何能直接通信相关的资料

热点内容
TAC网络安全认证书 浏览:549
火车上的手机网络变差怎么办 浏览:878
节点效率脑连接网络 浏览:56
手机网络锁掉了打不开怎么办 浏览:485
怎么让虚拟机在网络连接里显示 浏览:866
东航值机选座显示网络异常 浏览:952
杭州飘雪网络公司员工多少 浏览:904
网络原画哪个好 浏览:459
qq在哪里找网络设置 浏览:714
沈阳网络商城软件价格 浏览:493
苹果商店和pp助手无网络 浏览:39
网络存储服务器是什么 浏览:552
网络配置代理什么意思 浏览:904
手机网络测试排行榜 浏览:40
网络小说一章一般要写多少字 浏览:427
在网络被骗了一个手机 浏览:557
通电话时无法连接网络 浏览:539
公共场所移动网络卡 浏览:999
为啥苹果手机连起wifi没有网络 浏览:970
移动网络信号不好吗 浏览:495

友情链接