为什么我做的游戏服务器只能通过用户名来访问共享,而不能通过IP来访问?

为什么我做的游戏服务器只能通过用户名来访问共享,而不能通过IP来访问?,第1张

现在公司最喜欢用WIN2000/ xp,但是这个系统本身就带有些系统排斥,因为内网的资源是共享的,所以经常碰到等入不了的问题,系统提示:此工作组的服务器列表无法使用。下面就着手解决但是首先,我们先来看下网络邻居互相访问的最基本的条件:

1双方计算机打开,且设置了网络共享资源;

2双方的计算机添加了 "Microsoft 网络文件和打印共享" 服务;

3双方都正确设置了网内IP地址,且必须在一个网段中;

4双方的计算机中都关闭了防火墙,或者防火墙策略中没有阻止网上邻居访问的策略。

5 XP首次使用时在网上邻居的属性里面已经新建一个网络连接进行网络安装向导

6计算机之间的物理连接正常。在桌面计算机中,每个网卡后面的指示灯是亮的,集线器或交换机是打开的,而且每个客户端连接的指示灯都是亮的,网线的水晶头接触良好。

7确保所有计算机上都安装了TCP/IP,并且工作正常。

在Windows XP中默认安装了TCP/IP。但是,如果出了网络问题想卸载后重新安装TCP/IP就不容易了:在“本地连接”属性中显示的此连接使用下列项目列表中单击Internet协议(TCP/IP)项,您将发现卸载按钮不可用(被禁用)。

这是因为传输控制协议/Internet协议(TCP/IP)堆栈是Microsoft XP/ 2003的核心组件,不能删除。在这种情况下,如果需要重新安装TCP/IP以使TCP/IP堆栈恢复为原始状态。可以使用NetShell实用程序重置TCP/IP堆栈,使其恢复到初次安装操作系统时的状态。方法是:在命令提示符后键入以下命令,然后按ENTER键:netsh int ip reset c:\resetlogtxt,其中,Resetlogtxt记录命令结果的日志文件,一定要指定,这里指定了Resetlogtxt日志文件及完整路径。运行此命令的结果与删除并重新安装TCP/IP协议的效果相同。

既然我们现在了解明白了这些条件,,就可以着手解决:

第一种可能性就是本身系统系统浏览的正常现象。如微软公司文档中提到的预期的升级行为详细的可以到这里看: http://supportmicrosoftcom/kb/304040/ZH-CN/

还有一点, 在实际的网络运用中,安装Windows XP系统的电脑有时会出现不能与Windows 98、Windows 2000的电脑互相访问的问题,即使是开启Guest账号、安装NetBEUI协议、设置共享文件夹,也不能正常访问,这就属于系统本身浏览的政策现象

第二种是开了防火墙,在XP中自代的防火墙会导致无法访问网络邻居可以通过命令net view \\computername 来查看不论是2000还是XP只要关掉防火墙就可以同时确保防火墙没有禁止以下端口的通讯:UDP-137、UDP-138、TCP-139、TCP-445(仅WIN2K及以后的操作系统)。 Windows XP最新的SP2补丁对ICF做了很大的改进,功能更强大了,ICF有了自己的设置项,安装SP2后,默认情况下,启用ICF防火墙,不允许任何外部主动连接,即使是本地的应用程序要访问网络也需要在许可列表中做设置。

但是防火墙阻断正常的网络浏览服务通讯,结果是别人在网上邻居中看不到你的计算机这时候如果开启了ICF,打开属性,在服务这栏,选择添加,添加服务的对话框共有四个编辑框,最上边是描述服务名称,以便于记忆,从上到下第二个是应用服务的IP地址或名称,输入127001表示本机。

下面连个是内外端口号,旁边的tcp/udp标示这个端口是udp连接还是tcp连接。

按照下面的表格输入3个服务

名称 协议 端口

NetBIOS Name Service UDP 137

NetBIOS Datagram Service UDP 138

NetBIOS Session Service TCP 139

PS: 137/UDP -- NetBIOS名称服务器,网络基本输入/输出系统(NetBIOS)名称服务器(NBNS)协议是TCP/IP上的NetBIOS (NetBT)协议族的一部分,它在基于NetBIOS名称访问的网络上提供主机名和地址映射方法。

138/UDP -- NetBIOS数据报,NetBIOS数据报是TCP/IP上的NetBIOS (NetBT)协议族的一部分,它用于网络登录和浏览。

139/TCP -- NetBIOS会话服务,NetBIOS会话服务是TCP/IP上的NetBIOS (NetBT)协议族的一部分,它用于服务器消息块(SMB)、文件共享和打印。

第三种是查看Guest用户激活了没有,可以从“控制面板|管理工具|计算机管理|本地用户和组|用户”中找到“Guest”账户,并用鼠标右击打开“Guest属性”对话框,去除这里的“账户已停用”复选框上的对钩标记

Windows XP的Guest帐户允许其他人使用你的电脑,但不允许他们访问特定的文件,也不允许他们安装软件。对Windows XP Home Edition计算机或工作组中的Windows XP Professional计算机的所有网络访问都使用来宾帐户。使用net user guest确保为网络访问设置了来宾帐户,如果该帐户是活动的,命令输出中会出现一行类似下面这样的内容:Account active Yes;如果该帐户不是活动的,请使用下面的命令授予来宾帐户网络访问:

net user guest /active:yes

或者打开控制面板->用户帐户或者在管理工具->计算机管理->本地用户和组中打开Guest帐户同时设置为允许Guest(来宾)帐号从网络上访问。

在运行里输入gpeditmsc,弹出组策略管理器,在‘计算机配置-Windows设置-本地策略-用户权利指派’中,有“拒绝从网络访问这台计算机”策略阻止从网络访问这台计算机,如果其中有GUEST帐号,解决办法是删除拒绝访问中的GUEST帐号。

第四种查看协议,IPX,netbeui,TIP/IP协议,选择开启,共享用的是139,445端口 Win2k安装NetBEUI协议

网上邻居->属性->本地连接->属性---->安装------>协议------->NetBEUI Protocol

XP右击网上邻居-属性,选择要共享的网卡。把IP设置在局域网的同一个网段上。在XP中打开 TCP/IP 上的 NetBIOS

开始---->控制面板---->网络和 Internet 连接---->网络连接---->本地连接---->属性---->Internet 协议 (TCP/IP) ---->常规---->高级---->WINS选项---->NetBIOS---->启用 TCP/IP 上的 NetBIOS---->确定[点击2次]

第五种在共享文件夹前加个符号,比如¥,%等

第六种检查Win2000是否存在安全策略限制

开始 -> 运行 -> gpeditmsc -> 计算机配置 -> windows设置 -> 本地策略 -> 用户权利分配 -> 删除"拒绝从网络访问这台计算机"中的guest用户。

XP的主策略安全设置

开始 -> 运行 -> gpeditmsc -> 计算机配置 -> windows设置 -> 安全设置 ->本地策略 ->用户权利分配 -> 从网络上访问此计算机"属性那里性质Everone或者在"拒绝从网络访问这计算机"属性中删除GUEST

第七种“文件及打印机共享”的限制,允许其他用户访问我的文件点击激活就可以,其他的一些比较少碰到的问题如内部IP地址发生了冲突,甚至包括Hub故障、线路故障等就不说了

第八种启动"计算机浏览器"服务根据微软的文档工作组中的一台或多台计算机没有启动或已关闭(禁用)"计算机浏览器"服务也会导致访问网络邻居失败打开就可以了

开始---->我的电脑---->管理---->服务和应用程序---->服务---->在右边的详细信息窗格中,检查"计算机浏览器"服务是否已启动,右击计算机浏览器,然后单击启动

第九种运行网络标识向导

我的电脑---->属性---->计算机名选项卡----> 网络 ID按钮,开始“网络标识向导”: ---->下一步---->本机是商业网络的一部分,用它连接到其他工作着的计算机---->下一步---->公司使用没有域的网络---->下一步---->输入你的局域网的工作组名---->下一步---->完成

第十种检查RPC、Plug and Play服务已启动,检查相应的系统文件夹的权限,重新注册以下的动态链接库:

regsvr32 netshelldll

regsvr32 netcfgxdll

regsvr32 netmandll

第十一种设置帐号和密码 由于WinNT内核的操作系统,在访问远程计算机的时候,好像总是首先尝试用本地的当前用户名和密码来尝试,可能造成无法访问,在这里把用户密码添加进去就可以了。

第十二种ping ip ,然后在地址输入栏中输入“19216818”,单击“确定”。

用搜索计算机的方法访问,计算机更新列表需要时间,搜索计算机可以加快更新列表。点击“网上邻居”右键中的“搜索计算机”,输入计算机名,点击“立即搜索”,就可以看到你要访问的计算机。直接双击右边计算机名就可以打开它了。

用映射驱动器的方法访问,进入DOS方式,输入“NET VIEW \killer”,回车�这是查看计算机上有哪些共享文件夹,如D。再输入NET USE Z:\Killer\D�将计算机IBM-ZB共享的文件夹D映射为H:盘,在命令提示符下键入“Z:”。你会发现你已经连到目标计算机上了。

如果一个文件共享的时候在文件名前上了符号如¥%隐藏文件,可以在DOS下net share可以看的到。

由于WIN是中断式操作系统,如果对OS不是很熟悉的话会产生误解,相关的网络浏览过程方面的资料GOOGLE下就会有很多(作者:无双坏坏 kijs 来源:邪恶八进制信息安全团队)

Windows网上邻居互访的基本条件:

1) 双方计算机打开,且设置了网络共享资源;

2) 双方的计算机添加了 "Microsoft 网络文件和打印共享" 服务;

3) 双方都正确设置了网内IP地址,且必须在一个网段中;

4) 双方的计算机中都关闭了防火墙,或者防火墙策略中没有阻止网上邻居访问的策略。

Windows 98/2000/XP/2003访问XP的用户验证问题

首先关于启用Guest为什么不能访问的问题:

1、默认情况下,XP 禁用Guest帐户

2、默认情况下,XP的本地安全策略禁止Guest用户从网络访问

3、默认情况下,XP的 本地安全策略 -> 安全选项 里,"账户:使用空密码用户只能进行控制台登录"是启用的,也就是说,空密码的任何账户都不能从网络访问只能本地登录,Guest默认空密码

所以,如果需要使用Guest用户访问XP的话,要进行上面的三个设置:启用Guest、修改安全策略允许Guest从网络访问、禁用3里面的安全策略或者给Guest加个密码。

有时还会遇到另外一种情况:访问XP的时候,登录对话框中的用户名是灰的,始终是Guest用户,不能输入别的用户帐号。

原因是这个安全策略在作怪(管理工具 -> 本地安全策略 -> 安全选项 -> "网络访问:本地帐户的共享和安全模式")。默认情况下,XP的访问方式是"仅来宾"的方式,那么你访问它,当然就固定为Guest不能输入其他用户帐号了。

所以,访问XP最简单的方法就是:不用启用Guest,仅修改上面的安全策略为"经典"就行了。别的系统访问XP就可以自己输入帐户信息。

至于访问2003,默认情况下2003禁用Guest,但是没有 XP 那个讨厌的默认自相矛盾的来宾方式共享,所以可以直接输入用户名密码访问。

一个小型办公局域网,都是winxp系统,都能上外网,也能看到对方计算机,却不能看到对方共享的计算机提示网络路径不正确,或你没有权限使用网络 大概就是这个意思 我记的不太清楚!!来宾帐户我也启用了!winxp的防火墙也是关闭的,ip地址也没什么问题!!希望大家给分析一下!!非常感谢!

原因:Win2000/XP中存在安全策略限制。

有时,Win2000/XP"聪明"过了头,虽然我们已经启用了Guest账户,从Win98中却仍然无法访问Win2000/XP,比如使用了类似瑞星等的防火墙漏洞修补,它会修改"拒绝从网络访问这台计算机"的策略,按下面的方法修改回来:

开始 -> 运行 -> gpeditmsc -> 计算机配置 -> windows设置 -> 本地策略 -> 用户权利分配 -> 删除"拒绝从网络访问这台计算机"中的guest用户。

Win2000/XP与Win98互访

如果两台电脑都使用Win2000/XP操作系统,那么组建局域网是一件非常简单轻松的事情,当硬件连接完成后,正常情况下立即可以在"网上邻居"中看到对方。但如果局域网中有一台电脑使用Win98,那情况可就不一定了,我们经常会发觉虽然Ping命令可以通过,但仍然无法在"网上邻居"中实现互访,这时该怎么办呢?

对策一:在Win2000/XP中启用Guest用户。在Win2000/XP系统安装之后会缺省建立两个用户账户,即Administrator(系统管理员)和Guest(来宾账户),所有在本地计算机没有被分配到账户的用户都将默认使用Guest账户,该账户是没有密码的。不过,在缺省设置下,这个Guest账户并未被启用,我们可以从"控制面板|管理工具|计算机管理|本地用户和组|用户"中找到"Guest"账户,并用鼠标右击打开"Guest属性"对话框,去除这里的"账户已停用"复选框上的对钩标记,这样退出后就可以从Win98中访问到Win2000/XP了。

其实,启用了Guest账户后,最大的好处是从Win98访问Win2000/XP时就不需要输入用户名和密码了,这种方法比较适合于用户不确定、访问量较大的局域网,但对家庭用户来说并不适用。

对策二:检查Win2000/XP中是否存在安全策略限制。有时,Win2000/XP"聪明"过了头,虽然我们已经启用了Guest账户,从Win98中却仍然无法访问Win2000/XP,这时就要从"控制面板|管理工具|本地安全策略|本地策略|用户权利指派"中找到"从网络访问此计算机"或者"拒绝从网络访问这台计算机",然后检查一下其中是否出现了Guest账户或者其他对应的账户,然后根据不同情况进行添加或者删除即可。

对策三:停用本地连接上的防火墙。防火墙是充当网络与外部世界之间的保卫边界的安全系统,微软在WinXP中为用户提供了一个内置的Internet连接防火墙(ICF),启用后可以限制某些不安全信息从外部进入内部网络。不过,如果您是在本地连接上启用了这个防火墙,那么就会造成工作组之间无法互访,出现"XXX无法访问"、"您可能没有权限使用网络资源"、"请与这台服务器的管理员联系以查明您是否有访问权限"、"找不到网络路径"等类似的提示,此时请停用本地连接的防火墙屏蔽。

对策四:为WinXP添加NetBEUI协议。其实,直接添加NetBEUI协议对于解决不能互访的问题有时反而更为简单一些,而且它可以解决上面提到的启用防火墙的问题。Win98安装时会自动安装NetBEUI协议,但由于WinXP已经不再提供对NetBEUI协议的技术支持,因此只能手工添加了。

找出WinXP安装光盘,进入"valueaddMsftNetNetbeui"文件夹下,这里有Nbfsys、Netbeuitxt、Netnbfinf共3个文件,先将Nbfsys文件复制到本机的"WindowsSystem32Drivers"文件夹下(这里的本机指安装了WinXP的那台电脑),再将Netnbfinf文件复制到本机的"WindowsINF"文件夹下,Netbeuitxt文件可有可无。不过, INF文件夹具有隐藏属性,用户需要先在WinXP下的"工具|属性"窗口中选择显示文件才可以看到该目录。

对策五:启用Win98中的"文件及打印机共享"。这是一个很简单但却经常被人忽略的问题,就是装有Win2000/XP的机器虽然可以从"网上邻居"中发现装有Win98的机器,但却无法访问,这是因为Win98未启用"允许其他用户访问我的文件"而造成的,启用该选项就可以解决这个问题。

当然,除了上面提到的各种原因外,还有两台电脑不处于同一工作组中,或者是两台电脑的内部IP地址发生了冲突,甚至包括Hub故障、线路故障等。

一、OSI模型

名称 层次 功能

物理层 1 实现计算机系统与网络间的物理连接

数据链路层 2 进行数据打包与解包,形成信息帧

网络层 3 提供数据通过的路由

传输层 4 提供传输顺序信息与响应

会话层 5 建立和中止连接

表示层 6 数据转换、确认数据格式

应用层 7 提供用户程序接口

二、协议层次

网络中常用协议以及层次关系

1、 进程/应用程的协议

平时最广泛的协议,这一层的每个协议都由客程序和服务程序两部分组成。程序通过服务器与客户机交互来工作。常见协议有:Telnet、FTP、SMTP、HTTP、DNS等。

2、 主机—主机层协议

建立并且维护连接,用于保证主机间数据传输的安全性。这一层主要有两个协议:

TCP(Transmission Control Protocol:传输控制协议;面向连接,可靠传输

UDP(User Datagram Protocol):用户数据报协议;面向无连接,不可靠传输

3、 Internet层协议

负责数据的传输,在不同网络和系统间寻找路由,分段和重组数据报文,另外还有设备寻址。些层包括如下协议:

IP(Internet

Protocol):Internet协议,负责TCP/IP主机间提供数据报服务,进行数据封装并产生协议头,TCP与UDP协议的基础。

ICMP(Internet Control Message

Protocol):Internet控制报文协议。ICMP协议其实是IP协议的的附属协议,IP协议用它来与其它主机或路由器交换错误报文和其它的一些网络情况,在ICMP包中携带了控制信息和故障恢复信息。

ARP(Address Resolution Protocol)协议:地址解析协议。

RARP(Reverse Address Resolution Protocol):逆向地址解析协议。

OSI 全称(Open System Interconnection)网络的OSI七层结构2008年03月28日 星期五

14:18(1)物理层——Physical

这是整个OSI参考模型的最低层,它的任务就是提供网络的物理连接。所以,物理层是建立在物理介质上(而不是逻辑上的协议和会话),它提供的是机械和电气接口。主要包括电缆、物理端口和附属设备,如双绞线、同轴电缆、接线设备(如网卡等)、RJ-45接口、串口和并口等在网络中都是工作在这个层次的。

物理层提供的服务包括:物理连接、物理服务数据单元顺序化(接收物理实体收到的比特顺序,与发送物理实体所发送的比特顺序相同)和数据电路标识。

(2)数据链路层——DataLink

数据链路层是建立在物理传输能力的基础上,以帧为单位传输数据,它的主要任务就是进行数据封装和数据链接的建立。封装的数据信息中,地址段含有发送节点和接收节点的地址,控制段用来表示数据连接帧的类型,数据段包含实际要传输的数据,差错控制段用来检测传输中帧出现的错误。

数据链路层可使用的协议有SLIP、PPP、X25和帧中继等。常见的集线器和低档的交换机网络设备都是工作在这个层次上,Modem之类的拨号设备也是。工作在这个层次上的交换机俗称“第二层交换机”。

具体讲,数据链路层的功能包括:数据链路连接的建立与释放、构成数据链路数据单元、数据链路连接的分裂、定界与同步、顺序和流量控制和差错的检测和恢复等方面。

(3)网络层——Network

网络层属于OSI中的较高层次了,从它的名字可以看出,它解决的是网络与网络之间,即网际的通信问题,而不是同一网段内部的事。网络层的主要功能即是提供路由,即选择到达目标主机的最佳路径,并沿该路径传送数据包。除此之外,网络层还要能够消除网络拥挤,具有流量控制和拥挤控制的能力。网络边界中的路由器就工作在这个层次上,现在较高档的交换机也可直接工作在这个层次上,因此它们也提供了路由功能,俗称“第三层交换机”。

网络层的功能包括:建立和拆除网络连接、路径选择和中继、网络连接多路复用、分段和组块、服务选择和流量控制。

(4)传输层——Transport

传输层解决的是数据在网络之间的传输质量问题,它属于较高层次。传输层用于提高网络层服务质量,提供可靠的端到端的数据传输,如常说的QoS就是这一层的主要服务。这一层主要涉及的是网络传输协议,它提供的是一套网络数据传输标准,如TCP协议。

传输层的功能包括:映像传输地址到网络地址、多路复用与分割、传输连接的建立与释放、分段与重新组装、组块与分块。

根据传输层所提供服务的主要性质,传输层服务可分为以下三大类:

A类:网络连接具有可接受的差错率和可接受的故障通知率(网络连接断开和复位发生的比率),A类服务是可靠的网络服务,一般指虚电路服务。

C类:网络连接具有不可接受的差错率,C类的服务质量最差,提供数据报服务或无线电分组交换网均属此类。

B类:网络连接具有可接受的差错率和不可接受的故障通知率,B类服务介于A类与C类之间,在广域网和互联网多是提供B类服务。

网络服务质量的划分是以用户要求为依据的。若用户要求比较高,则一个网络可能归于C型,反之,则一个网络可能归于B型甚至A型。例如,对于某个电子邮件系统来说,每周丢失一个分组的网络也许可算作A型;而同一个网络对银行系统来说则只能算作C型了。

(5)会话层——Senssion

会话层利用传输层来提供会话服务,会话可能是一个用户通过网络登录到一个主机,或一个正在建立的用于传输文件的会话。

会话层的功能主要有:会话连接到传输连接的映射、数据传送、会话连接的恢复和释放、会话管理、令牌管理和活动管理。

(6)表示层——Presentation

表示层用于数据管理的表示方式,如用于文本文件的ASCII和EBCDIC,用于表示数字的1S或2S补码表示形式。如果通信双方用不同的数据表示方法,他们就不能互相理解。表示层就是用于屏蔽这种不同之处。

表示层的功能主要有:数据语法转换、语法表示、表示连接管理、数据加密和数据压缩。

(7)应用层——Application

这是OSI参考模型的最高层,它解决的也是最高层次,即程序应用过程中的问题,它直接面对用户的具体应用。应用层包含用户应用程序执行通信任务所需要的协议和功能,如电子邮件和文件传输等,在这一层中TCP/IP协议中的FTP、SMTP、POP等协议得到了充分应用。

SNMP(Simple Network Management

Protocol,简单网络管理协议)的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。随后,人们对SGMP进行了很大的修改,特别是加入了符合Internet定义的SMI和MIB:体系结构,改进后的协议就是著名的SNMP。SNMP的目标是管理互联网Internet上众多厂家生产的软硬件平台,因此SNMP受Internet标准网络管理框架的影响也很大。现在SNMP已经出到第三个版本的协议,其功能较以前已经大大地加强和改进了。

SNMP的体系结构是围绕着以下四个概念和目标进行设计的:保持管理代理(agent)的软件成本尽可能低;最大限度地保持远程管理的功能,以便充分利用Internet的网络资源;体系结构必须有扩充的余地;保持SNMP的独立性,不依赖于具体的计算机、网关和网络传输协议。在最近的改进中,又加入了保证SNMP体系本身安全性的目标。

OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway

Protocol,简称IGP),用于在单一自治系统(autonomous

system,AS)内决策路由。与RIP相对,OSPF是链路状态路由协议,而RIP是距离向量路由协议。

RIP(Routing information Protocol)是应用较早、使用较普遍的内部网关协议(Interior Gateway

Protocol,简称IGP),适用于小型同类网络,是典型的距离向量(distance-vector)协议。文档见RFC1058、RFC1723。

RIP通过广播UDP报文来交换路由信息,每30秒发送一次路由信息更新。RIP提供跳跃计数(hop

count)作为尺度来衡量路由距离,跳跃计数是一个包到达目标所必须经过的路由器的数目。如果到相同目标有二个不等速或不同带宽的路由器,但跳跃计数相同,则RIP认为两个路由是等距离的。RIP最多支持的跳数为15,即在源和目的网间所要经过的最多路由器的数目为15,跳数16表示不可达

CSMA/CD(Carrier Sense Multiple Access/Collision Detect)

即载波监听多路访问/冲突检测方法

一、基础篇:

是一种争用型的介质访问控制协议。它起源于美国夏威夷大学开发的ALOHA网所采用的争用型协议,并进行了改进,使之具有比ALOHA协议更高的介质利用率。

CSMA/CD控制方式的优点是:

原理比较简单,技术上易实现,网络中各工作站处于平等地位 ,不需集中控制,不提供优先级控制。但在网络负载增大时,发送时间增长,发送效率急剧下降。

CSMA/CD应用在 ISO7层里的数据链路层

它的工作原理是: 发送数据前 先监听信道是否空闲 ,若空闲

则立即发送数据在发送数据时,边发送边继续监听若监听到冲突,则立即停止发送数据等待一段随即时间,再重新尝试

二、进阶篇:

CSMA/CD控制规程:

控制规程的核心问题:解决在公共通道上以广播方式传送数据中可能出现的问题(主要是数据碰撞问题)

控制过程包含四个处理内容:侦听、发送、检测、冲突处理

(1) 侦听:

通过专门的检测机构,在站点准备发送前先侦听一下总线上是否有数据正在传送(线路是否忙)

若“忙”则进入后述的“退避”处理程序,进而进一步反复进行侦听工作。

若“闲”,则一定算法原则(“X坚持”算法)决定如何发送。

(2) 发送:

当确定要发送后,通过发送机构,向总线发送数据。

(3) 检测:

数据发送后,也可能发生数据碰撞。因此,要对数据边发送,边接收,以判断是否冲突了。(参5P127图)

(4)冲突处理:

当确认发生冲突后,进入冲突处理程序。有两种冲突情况:

① 侦听中发现线路忙

② 发送过程中发现数据碰撞

① 若在侦听中发现线路忙,则等待一个延时后再次侦听,若仍然忙,则继续延迟等待,一直到可以发送为止。每次延时的时间不一致,由退避算法确定延时值。

② 若发送过程中发现数据碰撞,先发送阻塞信息,强化冲突,再进行侦听工作,以待下次重新发送(方法同①)

面向比特的协议中最有代表性的是IBM的同步数据链路控制规程SDLC(Synchronous Data Link Control),国际标准化组织ISO

(International Standards Organization)的高级数据链路控制规程HDLC(High Level Data Link

Control),美国国家标准协会(American National Standar ds Institute )的先进数据通信规程ADCCP (

Advanced Data Communications Control

Procedure)。这些协议的特点是所传输的一帧数据可以是任意位,而且它是靠约定的位组合模式,而不是靠特定字符来标志帧的开始和结束,故称"面向比特"的协议。

二帧信息的分段

SDLC/HDLC的一帧信息包括以下几个场(Field),所有场都是从最低有效位开始传送。

1 SDLC/HDLC标志字符

SDLC/HDLC协议规定,所有信息传输必须以一个标志字符开始,且以同一个字符结束。这个标志字符是01111110,称标志场(F)。从开始标志到结束标志之间构成一个完整的信息单位,称为一帧(Frame)。所有的信息是以帧的形式传输的,而标志字符提供了每一帧的边界。接收端可以通过搜索"01111110"来探知帧的开头和结束,以此建立帧同步。

2地址场和控制场

在标志场之后,可以有一个地址场A(Address)和一个控制场C(Contro1)。地址场用来规定与之通信的次站的地址。控制场可规定若干个命令。SDLC规定A场和C场的宽度为8位。HDLC则允许A场可为任意长度,C场为8位或16位。接收方必须检查每个地址字节的第一位,如果为"0",则后边跟着另一个地址字节;若为"1",则该字节就是最后一个地址字节。同理,如果控制场第一个字节的第一位为"0",则还有第二个控制场字节,否则就只有一个字节。

3信息场

跟在控制场之后的是信息场I(Information)。I场包含有要传送的数据,亦成为数据场。并不是每一帧都必须有信息场。即信息场可以为0,当它为0时,则这一帧主要是控制命令。

4帧校验场

紧跟在信息场之后的是两字节的帧校验场,帧校验场称为FC(Frame Check)场, 校验序列FCS(Frame check

Sequence)。SDLC/HDLC均采用16位循环冗余校验码CRC (Cyclic Redundancy

Code),其生成多项式为CCITT多项式X^16+X^12+X^5+1。除了标志场和自动插入的"0"位外,所有的信息都参加CRC计算。

CRC的编码器在发送码组时为每一码组加入冗余的监督码位。接收时译码器可对在纠错范围内的错码进行纠正,对在校错范

围内的错码进行校验,但不能纠正。超出校、纠错范围之外的多位错误将不可能被校验发现 。

三实际应用时的两个技术问题

1"0"位插入/删除技术

如上所述,SDLC/HDLC协议规定以01111110为标志字节,但在信息场中也完全有可能有同一种模式的字符,为了把它与标志区分开来,所以采取了"0"位插入和删除技术。具体作法是发送端在发送所有信息(除标志字节外)时,只要遇到连续5个"1",就自动插入一个"0"当接收端在接收数据时(除标志字节)如果连续接收到5个"1",就自动将其后的一个"0"删除,以恢复信息的原有形式。这种"0"位的插入和删除过程是由硬件自动完成的,比上述面向字符的"数据透明"容易实现。

2 SDLC/HDLC异常结束

若在发送过程中出现错误,则SDLC/HDLC协议用异常结束(Abort)字符,或称失效序列使本帧作废。在HDLC规程中7个连续的"1"被作为失效字符,而在SDLC中失效字符是8个连续的"1"。当然在失效序列中不使用"0"位插入/删除技术。

SDLC/HDLC协议规定,在一帧之内不允许出现数据间隔。在两帧信息之间,发送器可以连续输出标志字符序列,也可以输出连续的高电平,它被称为空闲(Idle)信号。

发送的前提是建立连接,如果 你用独立的第三方(或者你自己写的)软件的话 首先知道对方游戏服务器的外网IP和端口,建立socket连接后 就可以使用send或者write函数 发送你想发送的数据了。如果你是使用现有的游戏客户端登陆游戏后,只需要模拟客户端,修改发包的内容即可。

当您的宽带上网显示“错误720”时,如有路由器,可先断电重启,若仍不能使用,可去掉路由器后进行以下检测:

1、重新启动电脑、重启Modem设备;

2、重建宽带连接;

3、卸载网卡驱动,重新安装;

4、删除所有网络组件重新安装;

5、重装计算机操作系统。

如经自助排障后还是无法正常使用,建议联系归属地人工客服报障处理。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 为什么我做的游戏服务器只能通过用户名来访问共享,而不能通过IP来访问?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情