关闭

网络程序设计基础

188人阅读 评论(0) 收藏 举报
分类:

局域网与因特网


为了实现两台计算机的通信,必须要用一个网络线路连接两台计算机

服务器<-------------->网络<-------------->客户机

服务器是指提供信息的计算机或程序,客户机是指请求信息的计算机或程序,而网络用于连接服务器与客户机,实现两者相互通信。但有时在某个网络中很难将服务器与客户机区分开。我们通常所说的局域网(Local Area Network,LAN),就是一群通过一定形式连接起来的计算机。它可以由两台计算机组成,也可以由同一区域内的上千台计算机组成。由LAN延伸到更大的范围,这样的网络称为广域网(Wide Area Network,WAN)。我们熟悉的因特网(Internet),就是由无数的LAN和WAN组成的。

网络协议

网络协议规定了 计算机之间连接的物理,机械(网线与网卡的连接规定).电气(有效的电平范围)等特征以及计算机之间的相互寻址规则,数据发送冲突的解决,长的数据如何分段传送与接收等。就像不同的国家有不同的法律一样,目前网络协议也有多种,下面简单地介绍几个常用的网络协议。

1.IP协议

IP是Internet Protocol的简称,它是一种网络协议。Internet网络采用的协议是TCP/IP协议。Internet依靠TCP/IP协议,在全球范围内实现不同硬件结构,不同操作系统,不同网络系统的互联。在Internet网络上存在数以亿计的主机,每一台主机在网络上用为其分配的Internet地址代表自己,这个地址就是IP地址。到目前为止IP地址用4个字节也就是32位的二进制数来表示,称为IPv4。为了便于使用,通常取用每个字节的十进制数,并且每个字节之间用圆点隔开来表示IP地址,如192.168.1.1。现在人们正在试验使用16个字节来表示IP地址,这就是IPv6,但IPv6还没有投入使用。


2.TCP与UDP协议

在TCP/IP协议栈中,有两个高级协议是网络应用程序编写者应该了解的,即传输控制协议TCP与用户数据报协议UDP

TCP协议是一种以固接连线为基础的协议,它提供两台计算机间可靠的数据传送。TCP可以保证从一端数据送至连接的另一端时,数据能够确实送达,而且抵达的数据的排列顺序和送出时的顺序相同,因此,TCP协议适合可靠性要求比较高的场合。就像拨打电话,必须先拨号给对方,等两端确定连接后,相互才能听到对方说话,才知道对方回应的是什么。

HTTP,FTP和Telnet等都需要使用可靠的通信频道,例如,HTTP从某个URL读取数据时,如果收到的数据顺序与发送时不相同,可能就会出现一个混乱的HTML文件或是一些无效的信息。

UDP是无连接通信协议,不保证可靠的数据的传输,但能够向若干个目标发送数据,接收发自若干个源的数据。UDP是以独立发送数据包的方式进行。这种方式就像邮递员送信给收信人,可以寄出很多信给同一个人,而每一封信都是相对独立的额,各封信送达的顺序并不重要,收信人接收信件的顺序也不能保证与寄出的信件的顺序相同。


UDP协议适合于一些对数据准确性要求不高的场合,如网络聊天室,在线影片等。这是由于TCP协议在认证上存在额外耗费,可能使传输速度减慢,而UDP协议可能会更适合这些对传输速度和时效要求非常高的网站,即使有一小部分数据包遗失或传送顺序有所不同,也不会严重危害该项通信。


注意:一些防火墙和路由器会设置成不允许UDP数据包传输,因此,若遇到UDP连接方面的问题,应先确定所在网络是否允许UDP协议


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:49624次
    • 积分:1280
    • 等级:
    • 排名:千里之外
    • 原创:73篇
    • 转载:26篇
    • 译文:0篇
    • 评论:6条
    博客专栏
    最新评论