
Linux网络编程
drinkingcode
分享好玩科技,探索未知世界
展开
-
TCP、UDP、IP 协议分析
互连网早期的时候,主机间的互连使用的是NCP协议。这种协议本身有很多缺陷,如:不能互连不同的主机,不能互连不同的操作系统,没有纠错功能。为了改善这种缺点,大牛弄出了TCP/IP协议。现在几乎所有的操作系统都实现了TCP/IP协议栈。 TCP/IP协议栈主要分为四层:应用层、传输层、网络层、数据链路层,每层都有相应的协议,如下图 所谓的协议就是双方进行数转载 2015-10-10 10:47:59 · 398 阅读 · 0 评论 -
网口扫盲二:Mac与Phy组成原理的简单分析
1. general 下图是网口结构简图.网口由CPU、MAC和PHY三部分组成.DMA控制器通常属于CPU的一部分,用虚线放在这里是为了表示DMA控制器可能会参与到网口数据传输中. 对于上述的三部分,并不一定都是独立的芯片,根据组合形式,可分为下列几种类型: CPU集成MAC与PHY; CPU集成MAC,PHY采用独立转载 2015-10-10 10:52:52 · 1644 阅读 · 0 评论 -
Linux网络编程之一
每日一结 一 网络基础知识 (一)IP地址 1.IP :网络中一台主机唯一标识 2.组成 :网络号 + 主机号 3.IP 分类 最高位 第一个字节 A 1 + 3 0 [0-127] B 2原创 2015-10-10 10:55:14 · 610 阅读 · 0 评论 -
Linux网络编程之二
每日一结 一 TCP 函数接口 int listen(int sockfd, int backlog); 功能:设置流式套接字为监听模式 参数: @sockfd 流式套接字的fd @backlog 请求队列的长度,最大128 返回值: 成功返回0,失败返回-1原创 2015-10-10 10:55:17 · 393 阅读 · 0 评论 -
Linux网络编程之三
每日一结 Tftp服务器的实现: server.c client.c 代码分析如下: 一 Linux IO模型 (1)阻塞IO (2)非阻塞IO原创 2015-10-10 10:55:19 · 320 阅读 · 0 评论 -
Linux网络编程之四
每日一结 一 UDP并发 核心思想:父进程接收到客户端的数据,就创建子进程,在子进程中创建一个新的套接字 和客户端交互 int do_client(接受客户端地址,数据,数据长度) { 1.创建用户数据报套接字 2.自动分配地址 3.处理数据[例如:输出数据内容] 4.通过新创建的原创 2015-10-10 10:55:22 · 353 阅读 · 0 评论 -
Linux网络编程之五
每日一结 组播: 网络地址: 一些特殊的组播地址: 一 组播包收和发 1.发送方 (1)创建用户数据报套接字 (2)填充组播地址和端口 (3)发送数据到组播地址 2.接收方 (1)创建用户数据报套接字 (2)加入组播组 s原创 2015-10-10 10:55:24 · 527 阅读 · 0 评论 -
Linux网络编程之六 --在线英英字典的实现
综合项目:在线英英字典 服务器端 head.h: server.c do_client.c Makefile 客户端 head.h原创 2015-10-10 10:55:28 · 4479 阅读 · 0 评论 -
网口扫盲一:网卡初步认识
网络适配器又称网卡或网络接口卡(NIC),英文名Network Interface Card.它是使计算机联网的设备.平常所说的网卡就是将PC机和LAN连接的网络适配器.网卡(NIC) 插在计算机主板插槽中,负责将用户要传递的数据转换为网络上其它设备能够识别的格式,通过网络介质传输.数据在计算机总线中传输是并行方式即数据是肩并肩传输的,而在网络的物理缆线中说数据以串行的比特流方式传输的,网卡承担串转载 2015-10-10 10:52:49 · 452 阅读 · 0 评论 -
网口扫盲三:以太网芯片MAC和PHY的关系
问:如何实现单片以太网微控制器? 答:诀窍是将微控制器、以太网媒体接入控制器(MAC)和物理接口收发器(PHY)整合进同一芯片,这样能去掉许多外接元器件.这种方案可使MAC和PHY实现很好的匹配,同时还可减小引脚数、缩小芯片面积.单片以太网微控制器还降低了功耗,特别是在采用掉电模式的情况下. 问:以太网MAC是什么? 答:MAC即Media Access Con转载 2015-10-10 10:52:55 · 1356 阅读 · 0 评论