网络协议
网络协议规定了计算机之间连接的物理、机械(网络与网卡的连接规定)、电气(有效的电平范围)等特征以及计算机之间的相互寻址规则、数据发生冲突的解决、长的数据如何分段传送与接收等。
1.IP协议
IP其实是Internet Protocol 的简称,由此可知它就是一种”网络协议”。Internet网络采用的协议是TCP/IP协议,其全称是Transmission Control Protocol/Internet Protocol 。Internet依靠TCP/IP协议,在全球范围内实现不同硬件结构、不同操作系统、不同网络系统的互联。
在internet网上,每台主机都通过一个为其分配的Internet地址来表示自己,这个地址就是IP地址。
目前为止IP地址使用4个字节,通常取每个字节的十进制数来表示,成为IPv4。IPv6目前还没投入使用。
TCP/IP模式是一种层次结构,共分为4层,分别为应用层、传输层、互联网层、和主机到网络层。各层实现特定的功能,提供特定的服务和访问接口,并有相对的独立性。
2.TCP与UDP协议
在TCP/IP协议栈中,有两个高级协议是网络应用程序编写者应该了解的,即”传输控制协议(Transmission Control Protocol,TCP)” 和”用户数据报协议(User Datagram Protocol,UDP)“。
TCP:是一种以固接连线为基础的协议,它提供两台计算机间可靠的数据传送。TCP可以保证从一端送至连接的另一端时能够确实送达,而且抵达的数据的排列顺序和送出时的顺序相同,因此TCP协议适合可靠性要求比较高的场合。HTTP,FTP,Telnet 等都需要使用可靠的通信频道。
UDP:是无线连接通信协议,不保证可靠数据的传输,但能够向若干个目标发送数据,接受若干个源的数据。UDP是以独立发送数据包的方式进行。这种方式就像邮递员送信给收信人,可以寄出很多信给同一个人,而每一封信都是相对独立的,各封信送达的顺并非重要,而收信人接收信件的顺序也无法保证与送信的一样。UDP协议适用于一些对数据准确性要求不高的场合。
由于TCP协议在认证上存在额外耗费,有可能使传输速度减慢;UDP协议可能会更适合这些对传输速度和时效要求非常高的网站。
3.端口和套接字
端口:一般而言,一台计算机只有单一的连到网络的“物理连接”,所有的数据都通过此连接对内,对外送到特定的计算机,这就是端口。网络程序设计中的端口(port),并非真实的物理存在,而是一个假想得连接装置。端口被规定为一个在0~65535之间的整数。
套接字:网络程序中套接字(Socket)用于将应用程序与端口连接起来。套接字是一个假想的连接装置,就像插头的设备“插座”,用于连接电器和电线。