linux网络编程之基本协议学习

学习网路编程,主要是掌握网络函数的使用方法。但是大部分网络编程问题和网络编程无关,这些问题主要是由于程序员不熟悉底层的网络协议而造成的。所以先来学习一下相关的基本协议。
如果学过网络,我们肯定知道网络的体系结构:OSI参考模型和Tcp/Ip参考模型。
前者是理论模型,后者确是实际运行的模型。
1)我们这里先简单学习一下Tcp/IP模型。
下面是Tcp/Ip协议层次
===============================
应用程序                     应用程序                               应用层
---------|----------------------|---------------------------------------------------
        Tcp协议                     udp协议                               传输层
----------\----------------------------/------------------------------------------
                  \                           /
                        \             /
                        ip协议       ---   icmp协议                   网络层
----------------|-------------------------------------------------------------------
                  网络接口                                               数据链路层
===============================
ip协议是网络层协议,作为一个网络层协议,ip协议主要完成数据包的发送,将数据包传送到远程机器,而不管这两台机器是否处于同一个网络。ip协议为高层协议提供了一个非面向连接的和不可靠的数据包传送服务。
建立在ip协议之上的传输层协议,tcp协议提供了这样一种可靠的通信道路 。该协议保证通信的可靠性,保持数据字节的顺序,提供流量控制等。
[详细资料可以查看上面参考资料所在的地址。]
2)ftp协议
ftp协议属于应用层的协议。
应用层协议包括一些已经标准化的协议,比如ftp,telnet,ssh等,当然我们也可以自己开发一套协议。
简介:
ftp协议,全称File Transfer Protocol(文件传输协议),这是大家非常熟悉的网络协议之一,也是Internet中使用最多的文件传输协议。主要用于在两台计算机之间实现文件的上传与下载,其中一台计算机作为FTP的客户端,另一台作为FTP的服务器端。通过FTP协议可以上传、下载几乎所有的文件类型,比如TXT、EXE、 DOC、MP3、ZIP、RAR等等。
应用:
在实际应用中,FTP不仅可以作为网络文件下载的主要格式,还可以作为单独的命令来使用。比如我们在下MP3的时候,经常遇到ftp://www.xxx.com/1.mp3,其中,ftp://表示文件传输格式, 表示远程计算机域名,1.mp3就是要下载的文件。另外,在Windows中还集成了ftp命令,比如在Windows XP的“命令提示符”中键入“ftp ”,就可以打开远程计算机,具体的命令参数可以键入“ftp/?”查看。linuxidc.com" target="_blank">

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wzwxfy.html