网络老是丢包怎么解决?
我们首先来认识一下什么是丢包,以及什么样的现象被成为是网络丢包:
数据在INTERNET上是以数据包为单位传输的,每包nK,不多也不少。这就是说,不管网络线路有多好、网络设备有多强悍,你的数据都不会是以线性(就象打电话一样)传输的,中间总是有空洞的。数据包的传输,不可能百分之百的能够完成,因为种种原因,总会有一定的损失。碰到这种情况,INTERNET会自动的让双方的电脑根据协议来补包和重传该包。如果网络线路好、速度快,包的损失会非常小,补包和重传的工作也相对较易完成,因此可以近似的将所传输的数据看做是无损的。但是,如果网络线路较差,数据的损失量就会非常大,补包工作又不是百分之百完成的。这种情况下,数据的传输就会出现空洞,造成丢包。
打开网页的速度特别的慢,有时候还会出现网页部分内容或是整个页面无法显示的问题;QQ等即时通讯工具等频繁掉线或提示登陆超时;已经设置为自动获取IP地址,却并非每次都可以正常获取;下载文件速度慢……这些故障有很大一部分是由于丢包造成的。
[next]
接下来我们来看如何确认、检测以及解决丢包故障:
常见的测试丢包的方法是通过使用PING命令进行测试,如图所示,Request timed out表示此刻发生丢包故障。Reply from 220181619: bytes=32 time=10ms TTL=55 类似显示表示数据传输正常。另外,还可以通过一些工具软件进行测试,具体测试方法可参见各软件使用说明文档,在此不做过多阐述。
如前所述,丢包故障多数由以下几方面问题引起:蠕虫病毒、网线连接距离过长(室内理论有效传输距离为100米,但实际应用中一般以不超过50米为宜)、网线故障(包括水晶头金属物氧化及其他故障)、操作系统自身故障、网卡故障(由于网卡工作频率与网络设备工作频率不相符引起的故障,如千兆网卡配合百兆网络设备等;也可能为网卡物理故障,如设备自然老化或遇到雷击等)、网络设备故障(设备工作环境影响引起,如环境过于潮湿、干燥或电磁干扰严重等,也可能由于设备硬件故障造成)、网络运营商线路问题。
解决方法对照以上所示故障为:断开网络后安全模式下查杀病毒、适当减短网线长度、检查网线并重新制作水晶头、重装操作系统、调整网卡或网络设备使之工作在同一频率、更换网卡、更换网络设备的使用环境或更换网络设备、联系网络运营商解决。
一般跨境企业比如说跨境电商、游戏等等都会有海外各个节点服务器的需求,包括对海外服务器的需求。当使用海外服务器时,难免会出现一些问题,比如说丢包。那么,当服务器丢包的话,该如何处理呢?壹基比小喻来告诉你们
说到丢包,我们一般是在说PING服务器IP出现的数据包丢失的现象。PING值指的是从PC对服务器发送数据到接收到服务器反馈的数据这一来一回的时间,一般以毫秒计算。在数据传输的过程中,很多情况都会影响到PING值,比如说网络自身的原因、系统资源的原因、防火墙使用过多的原因、病毒木马的原因、当地骨干网的原因、交换机节点的原因等等。而其中PING服务器出现丢包则说明网络的不稳定,遇到丢包时,很多人首先会觉得是服务商网络的问题,但事实上,造成丢包的原因的是有不同的。
下面,我们来看看有哪些原因会引起丢包。 第一点,机房网络的原因。除却硬件设施造成的之外,如果对海外服务器的带宽和流量限制的太低或者是带宽资源不够,也是会因为请求多流量少造成丢包的;另外则是当机房本身受到流量攻击时,也会造成访问放置在该机房的海外服务器出现丢包现象,因此,面对这种情况,可以选择高防的机房。
第二点,本地网络的原因。如果是自己这边本地网络带宽不足或者别的情况的话,也是会出现PING丢包的现象的。
第三点,交换机的交换口的问题。出现丢包时也可能是物理层的原因,比如说网卡接口或者交换机端口的问题,因此,出现丢包时,可以查看一下是否是物理层面的问题。当海外服务器出现丢包时,可以自己先做一些检查,比如说,换根网线试试,查看一下带宽是否被占满了等等,如果自己解决不了,可以交给服务商,由服务商来进行检查处理。
1、可以登录到路由器,在系统工具--诊断工具中通过扩展ping向广域网服务器接口发送大量的数据包进行测试。如果上述测试没有发生丢包现象,则说明线路运营商提供的线路是好的,引起故障的原因在于用户自身,需要进一步查找。如果上述测试发生丢包现象,则说明故障是由线路供应商提供的线路引起的,需要与线路供应商联系尽快解决问题。
2、设备故障主要是指设备硬件方面的故障,不包含软件配置不当造成的丢包。如网卡是坏的,路由器的某个端口出现了物理故障,宽带接口与网络设备接口,或两端设备接口的双工模式不匹配。
3、网络拥塞造成丢包率上升的原因很多,主要是供应商服务器或路由器资源被大量占用造成的。
4、路由器错误,网络路径错误也会导致数据包不能到达目的主机,如主机的默认路由配置错误,主机发出的访问其他网络的数据包会被网关丢弃。但此类丢包属于正常情况下的丢包,是意料之中的,不会对网络造成影响。
一、回答这个问题之前,要考虑TCP协议为什么会丢包,在什么样的情况下会丢包。
1、TCP协议定义(Transimission Control Protocol)是以一种面向连接的、可靠的、基于字节流的传输层通信协议。
2、TCP是基于不可靠的网路实现可靠传输,肯定会存在丢包问题。
3、如果在通信过程中,发现缺少数据或者丢包,那边么最大的可能性是程序发送过程或者接受过程中出现问题。
例如:我有2台服务器 ,A和B服务器。
A服务器发送数据给B服务器频率过高时,B服务器来不及处理,造成数据丢包。(原因可能是程序逻辑问题,多线程同步问题,缓冲区溢出问题)
如果A服务器不对发送频率进行控制,或者数据进行重发的话,那么B服务器收到数据就会少。就会造成丢失数据
二、TCP协议丢包后,如何解决丢包的问题
为了满足TCP协议不丢包。TCP协议有如下规定
1、数据分片:发送端对数据进行分片,接受端要对数据进行重组,由TCP确定分片的大小并控制分片和重组
2、到达确认:接收端接收到分片数据时,根据分片数据序号向发送端发送一个确认
3、超时重发:发送方在发送分片时设置超时定时器,如果在定时器超时之后没有收到相应的确认,重发分片数据
4、滑动窗口:TCP连接的每一方的接受缓冲空间大小固定,接收端只允许另一端发送接收端缓冲区所能接纳的数据,TCP在滑动窗口的基础上提供流量控制,防止较快主机致使较慢主机的缓冲区溢出
5、失序处理:作为IP数据报来传输的TCP分片到达时可能会失序,TCP将对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层;
6、重复处理:作为IP数据报来传输的TCP分片会发生重复,TCP的接收端必须丢弃重复的数据;
7、数据校验:TCP将保持它首部和数据的检验和,这是一个端到端的检验和,目的是检测数据在传输过程中的任何变化。如果收到分片的检验或有差错,TCP将丢弃这个分片,并不确认收到此报文段导致对端超时并重发
如果您的服务器出现ping值大,丢包现象,以下为最终解释:
1 如果您的服务器被攻击,则耐心等待机房处理(抗攻击机房会针对攻击的特点做出硬防上的策略改动;非抗攻击机房会屏蔽你服务器的IP,或者干脆拔线)
2 你上网使用的网络运营商出国带宽峰值,或者你所在地区的市级、省级带宽出口问题(此时使用其他运营商线路访问服务器的速度是正常的),耐心等待你的网络运营商解决;
3 如果出现大面积的丢包和故障,一般原因是从一个国家的运营商发起的大规模攻击,导致与另外一家运营商的对接路由出现死机或者堵塞。这种情况下需要跨国通讯运营商的协调解决,时间会比较长。
从国内终端到国外服务器,所经过的互联网线路,最少是两家不同国家的网络运营商在提供服务,比如到西雅图机房,在国内段,需要中国联通的线路,海缆到美国上岸后,有需要对接到美国qwest通讯公司的线路,然后连接到西雅图SL数据中心;
到达拉斯SL,海缆上岸之后对接的是美国Cogentco通讯公司的光缆,进入达拉斯SL数据中心。其实不管是客户还是数据中心运营商,两方都是通讯运营商的客户。出问题都需要依赖通讯运营商来解决。
数据中心能解决的,只是充足的电力,公平的网络带宽分配,及时有效的技术支持,还有可靠的服务器硬件。
希望通过我们的解释,能够使您在网络异常的时候,心平气和的等待网络正常
0条评论