Linux C 语言网络编程(学习笔记 I):Socket 实现本地通信
最编程
2024-03-24 10:33:45
...
目录
1.网络编程常识
2.简单的本地通信
2.1 socket实现本地通信
2.2 相关API讲解
2.3 服务端和客户端代码演示
Linux的网络连接是通过内核完成的,其支持多种网络协议,如TCP/IP、IPX、DDP以及IPv6等。Linux系统通过提供套接字(scoket)进行网络编程。网络程序通过socket和其他几个函数调用后返回一个通信的文件描述符,可以将这个描述符看成普通文件的描述符来操作,并通过对描述符读写操作实现网络间的数据交流。
1.网络编程常识
TCP/IP协议是一组在网络中提供可靠数据传输和非可靠数据服务的协议。该协议组中最主要的协议就是TCP协议和IP协议,当然还包括其他协议,例如ICMP、ARP、PPP等协议。提供网络可靠传输(面向连接)的称为TCP协议,提供非可靠(面向无连接)传输的称为UDP。
TCP/IP协议参考模型如图所示。
应用层 | FTP,Telnet,HTTP | |||
传输层 | TCP,UDP | |||
网络互联层 | IP | |||
主机联网层 | 以太网 | 令牌环网 | 802.2 | HDLC,PPP,FRAME-RELAY |
802.3 | EIA/TIA-232,V.35 |
在TCP/IP参考模型中,去掉了OSI参考模型中会话层和表示层(这两层的功能被合并到应用层实现),同时将OSI参考模型中的数据链路层和物理层合并为主机联网层。
上一篇: 分析《儒林外史》中的 "腐儒 "形象。