![](https://img-blog.csdnimg.cn/20190927151132530.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Linux网络编程
文章平均质量分 72
Linux网络编程
祝你幸福365
好好学习,天天向上
展开
-
Linux网络编程-TCP/IP协议栈与数据包封装
TCP/IP网络协议栈分为应用层(Application)、传输层(Transport)、网络层(Network)和 链路层(Link)四层。如下图所示两台计算机通过TCP/IP协议通讯的过程如下所示:传输层及其以下的机制由内核提供,应用层由用户进程提供(后面将介绍如何使用socket API编 写应用程序),应用程序对通讯数据的含义进行解释,而传输层及其以下处理通讯的细节,将数据从一台计算机通过一定的路径发送到另一台计算机。应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(h原创 2021-08-05 23:52:48 · 387 阅读 · 0 评论 -
Linux网络编程-以太网、数据包、TCP/IP协议
以太网(RFC 894)帧格式以太网的帧格式如下所示其中的源地址和目的地址是指网卡的硬件地址(也叫MAC地址),长度是48位,是在网卡出厂时固化的。用ifconfig命令看一下,“HWaddr 00:15:F2:14:9E:3F” 部分就是硬件地址。协议字段有三种值,分别对应IP、ARP、RARP。帧末尾是CRC校验码。注意:MacOS上的 ifconfig --> en0 --> ether后面跟着的就是Mac地址 38:f9:d3:4d:31:0a其中的源地址和目原创 2021-08-06 09:54:03 · 1504 阅读 · 0 评论 -
Linux网络编程-Socket编程
原创 2021-08-08 00:49:11 · 1514 阅读 · 0 评论 -
Linux网络编程-UNIX Domain Socket IPC
socket API原本是为网络通讯设计的,但后来在socket的框架上发展出一种IPC机制,就是UNIX Domain Socket。虽然网络socket也可用于同一台主机的进程间通讯(通过loopback地 址127.0.0.1),但是UNIX Domain Socket 用于IPC更有效率:不需要经过网络协议栈,不需要打包拆包、计算校验和、维护序号和应答等,只是将应用层数据从一个进程拷贝到另一个进程。这是因为,IPC机制本质上是可靠的通讯,而网络协议是为不可靠的通讯设计的。UNIX Domain So原创 2021-08-10 22:14:09 · 148 阅读 · 0 评论 -
Linux网络编程-简单web服务器
//web.c#include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>#include <ctype.h>#include <signal.h>#inc.原创 2021-08-10 23:14:23 · 294 阅读 · 0 评论