SKYPE打电话的工作原理!
发布网友
发布时间:2022-04-19 10:07
我来回答
共2个回答
热心网友
时间:2022-05-07 15:16
无线skype电话的工作原理,通过USB接口,与电脑相连接,从而实现skypein、skypeout的功能。而2.4G多子机无线数码电话的功能则体现在接收与拨打普通电话上。需在电脑上运用skype 软件进行的网络电话、网络会议、查找联系人、浏览来电记录等操作,通过双功能无线手机同样可实现。它基于独创的全新技术,以高清晰的电话音质,丰富完备的功能,和超值低价格在全球同类产品中脱颖而出,在技术上处于领先地位。因为skype间用户通话费用全免,而SWP-36288 Skype Phone数字无蝇电话机使用户通话时免去了固定电话机电缆连接线的束缚,可以随时自由自在的移动,还可以方便地在普通电话与Skype电话之间任意切换。真正的给用户带来了方便、快捷、实惠、省钱。因此,该产品深受消费者的好评与青睐
USB-B2K类似一个电话适配器,一个连接到PC的USB接口,一个连接到PSTN外线的RJ11接口,一个连接到内线普通电话机或无绳电话机的RJ11接口。拥有了它以后,所有普通电话机或者无绳电话机都可以用来接听/拨打Skype电话
因为Skype的通讯协议是不公开的,而且通讯内容是加过密的,这两位完全在实验的基础上对Skype的通讯机制进行分析,分析结果很有参考价值。
通过分析得出的结论主要有三个:
1、Skype的通话质量较MSN和Yahoo的即时通信工具要好;
2、可以无缝的在NATs和防火墙后使用;
3、安装使用起来确实非常简单。
Skype与以往MSN等IM工具最大的不同在于基除了用户登录,其余工作基本不依赖*服务器,Skype在穿透防火墙通讯时完全使用了Peer to Peer,而没用到*服务器。上图中的小黑点是客户端,大黑点是超级节点(用于为其它客户端提供登录踏板及广播服务),灰色的点是Skype的登录服务器。
用户下载安装完Skype后,Skype客户端会发送一段HTTP 1.1的请求到*服务器,告诉它我装完了一个什么样的版本:
GET /ui/0/97/en/installed HTTP/1.1
User-Agent: Skype™ Beta 0.97
Host: ui.skype.com
Cache-Control: no-cache
服务器会返回一个200 OK的信息:
HTTP/1.1 200 OK
Date: Tue, 20 Apr 2004 04:51:39 GMT
Server: Apache/2.0.47 (Debian GNU/Linux) PHP/4.3.5
mod_ssl/2.0.47 OpenSSL/0.9.7b
X-Powered-By: PHP/4.3.5
Cache-control: no-cache, must revalidate
Pragma: no-cache
Expires: 0
Content-Length: 0
Content-Type: text/html; charset=utf-8
Content-Language: en
客户端会进行登录初始化工作,这一步工作包含很多内容,针对三种不同类型的网络情况有三种不同的登录方式:
1、直接有公众网的IP
2、在内部网,可以通过TCP访问外部网络
3、在内部网,但只能通过有限的几个端口(例如80和443)访问外部网络
Skype在登录的时候会先使用UDP请求HC中的IP,如果不行,就用TCP请求HC中的IP及端口,如果还不行,就用TCP请求HC中的IP及80端口,如果又不行,就再请求HC中的IP及443端口。如果这时候还不行,那就登录不了了。整个过程中传输的数据量大概在8k-10k,持续的时间在3至35秒。
明天继续。
Skype的主要组成部分-Skype通讯协议分析(2)1、端口
在Skype的连接属性对话框中可以设置监听的端口号,在安装的时候Skype会随机的选择一个端口作为监听的端口,这一点与HTTP协议等不同,Skype没有默认的服务端口。同时,它还会打开对80和443端口的监听。80是常见的HTTP服务默认端口,而443则是HTTPS服务的默认端口。
2、主机列表(HC,Host Cache)
这里的主机指的是可以提供踏板及广播服务的Super Node(SN)。通常它被存储在注册表里的:HKEY_CURRENT_USER / SOFTWARE / SKYPE / PHONE / LIB / CONNECTION / HOSTCACHE 中.一般情况下,运行两天后,HC中会有约200个机器地址及对应的端口号。
3、编解码器
要能语音通信,编解码器当然少不了。Global IP Sound在他的网站上专用明它为Skype提供点对点语音通讯软件:Global IP Sound provides voice processing software to Skype's peer-to-peer voice-communications software.Skype应该是使用了他们的编解码器实现的语音通讯。
4、好友列表
当你换了一台计算机的时候可能会发现Skype上的好友列表没了,不要奇怪,Skype的好友列表没有保存在服务器上,而是保存在本地的注册表中,当然,是加过密的。
5、加密
Skype使用AES加密标准。
6、NAT与防火墙
Skype应该是使用了STUN和TURN协议来检测所处的NAT及防火墙环境。Skype定期的刷新这些信息,这些信息也是存储在注册表中的。与另外一个点对点文件共享系统Kazza不同,普通客户端无法阻止自己成为Super Node(SN),就是说它随时可能被征用成为别人登录服务和广播服务的提供者,就是类似于BT中的种子提供者的角色。
Skype的主要功能-Skype通讯协议分析(3)Skype的功能主要可以分为:初始化,登录,用户搜索,呼叫建立与终止,媒体传输和状态消息。
1、初始化
第一次安装后,Skype会发送一段HTTP 1.1的请求给*服务器,包括关键字"installed"以及所装Skype的版本号。以后的每次登录Skype都会向*服务器发送一小段包含关键字"getlatestversion"的HTTP 1.1请求,检查是否有新版本的Skype。
2、登录
登录可能是Skype最重要的功能。在这个过程中,Skype终端到登录服务器上验证用户名密码,广播他在上线给好友及其它的点,检查NAT和防火墙的类型,发现拥有公网IP地址的在线Skype节点,这些新发现的节被用于在所在Super Node无法使用后继续保持本机与Skype网络的连接。
登录的过程我们前面已经讲过,先用UDP连,然后是TCP,然后TCP到80,然后TCP到443,行的话就连上了,不行的话就显示无法登录。连接的对象是保存在本机中Host Cache中的。
登录服务器的IP是80.160.91.11,nslookup记录显示它的域名是:ns14.inet.tele.dk和ns15.inet.tele.dk,dk是丹麦的国家定级域名。
安装完第一次登录时,HC被初始化,里面包含7对IP与端口,而且基本总是这7个IP和端口,即使包含超过7对,这7对也在其中。当用户安装后第一次登录时,Skype通过其中的一对IP和端口建立TCP连接。
这7个IP-端口对,以及这些IP对应的主机名是:
IP address:port Reverse lookup result
66.235.180.9:33033 sls-cb10p6.dca2.superb.net
66.235.181.9:33033 ip9.181.susc.suscom.net
80.161.91.25:33033 0x50a15b19.boanxx15.adsl-dhcp.tele.dk
80.160.91.12:33033 0x50a15b0c.albnxx9.adsl-dhcp.tele.dk
64.246.49.60:33033 rs-64-246-49-60.ev1.net
64.246.49.61:33033 rs-64-246-49-61.ev1.net
64.246.48.23:33033 ns2.ev1.net
可以看到上述的主机分别属于4个ISP,其中Superb , Suscom, ev1.net是美国的ISP
参考资料:http://space.stcore.com/39/viewspace_1686
热心网友
时间:2022-05-07 16:34
路过