随笔分类 - C 网络编程
摘要:###广播 前面我们所写的所有代码都只能实现点对点的通信,除非使用多线程或多进程的手段来实现一对多的通信效果。如何不使用进程线程的手段来实现给局域网中所有的主机发送一对多的广播效果呢?可以使用广播机制。 特点: 1.不需要循环给每一个主机发送数据,而是在同一个局域网中所有的主机都能收到广播信息, 只
阅读全文
摘要:###网络接收超时 一般情况下网络接收数据都采用阻塞属性,就等于一直等待对方数据到达。有的场合中我们可能不需要一直等待,因为可能会没有结果,这是可以使用超时接收,在规定的时间内如果没有数据到达。,则超时退出。 实现的主要方法有三种: 1.使用多路复用的select函数设置超时时间; 2.设置闹钟,当
阅读全文
摘要:###socket的四种IO模型 阻塞型: 1.最常用/最简单/效率低; 2.函数本身不具备阻塞属性,而是由于文件描述符本身导致函数阻塞; 3.在默认情况下Linux建立的socket套接都是阻塞的。 非阻塞: 1.设置某个文件描述符为非阻塞的,需要轮询; 2.占用CPU资源较大。 多路复用型: 1
阅读全文
摘要:###socket socket本质是插板和插座的意思,要完成数据的通信的套接字必须是成对出现的,即代表了插板和插座,,如下图所示,IP地址+端口号就对应了一个socket,一端的发送缓冲区对应了一端的接收缓冲区。建立连接的两个进程各自有一个socket来标识,那么这两个socket就组成的sock
阅读全文
摘要:###网络协议 用以数据传输的一组规则,常用的网络协议有: HTTP:超文本传输协议(Hyper Text Transfer Protocol)是互联网上应用最广泛的一种网络协议; TCP: 传输控制协议(Transmission Control Protocol)是一种面向连接的,可靠的,基于字节
阅读全文