
Unix网络编程
文章平均质量分 71
kinkin..
这个作者很懒,什么都没留下…
展开
-
TCP客户/服务器程序示例——POSIX信号处理
SIGCHLD信号就是由内核在任何一个进程终止时发给它的父进程的一个信号。signal函数:#include "unp.h"Sigfunc * signal(int signo,Sigfunc *func){ struct sigactionact oact; act.sa_handler = func; sigemptyset(&act.sa_mask); act.sa_flags = 0; if(signo == SIGALRM){#ifdef SA_INTERRUP原创 2022-03-22 21:16:16 · 139 阅读 · 0 评论 -
5种I/O模型
1)阻塞I/O在linux中,默认情况下所有的socket都是阻塞的。阻塞型接口是指系统调用(一般是IO接口)不返回调用结果并让当前线程一直阻塞,只有当该系统调用获得结果或者超时出错时才返回。2)非阻塞I/O进程把一个套接字设置成非阻塞是在通知内核:当所请求的I/O操作非得把本进程投入睡才能完成时,不要把本进程投入睡眠,而是返回一个错误。 前三次调用recvfrom时没有数据可返回,因此内核转而立即返回一个EWOULDBLOCK错误。第四次调用recvfrom时已有一个...原创 2022-01-05 21:06:04 · 989 阅读 · 0 评论 -
TCP客户/服务器程序示例——课后题
为了验证我们在5.13小节声明的关于产生SIGPIPE信号的推断,我们对“TCP回射客户程序”如下修改。编写一个SIGPIPE信号处理函数,它只是显示一条消息便返回。在调用connect之前建立该信号处理函数。把服务器的端口号改为13,即daytime服务器。连接建立后,调用sleep睡眠2秒钟,然后调用write .往套接字中写入若干字节,再sleep2秒钟,往套接字中再write若干字节。 运行该程序,观察它将会发生什么?...原创 2022-01-05 11:26:48 · 1296 阅读 · 0 评论 -
TCP客户/服务器程序示例之简单的回射客户/服务器
TCP客户/服务器程序示例之简单的回射客户/服务器原创 2022-01-02 23:19:18 · 2336 阅读 · 1 评论 -
在客户和服务器之间传递二进制结构
在客户和服务器之间传递二进制结构原创 2022-01-02 22:57:44 · 637 阅读 · 1 评论 -
在客户和服务器之间传递文本串
从客户读入一行文本(由空格分开的两个整数),服务器将返回这两个整数的和。原创 2021-12-29 20:47:37 · 513 阅读 · 0 评论 -
netstat命令详解
概述最近在学网络编程,用到了netstat命令,觉得非常有用,就把netstat的信息整理一下,以备不时之需。Netstat是控制台命令,是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。输出信息含义执行netstat后,其输出结果为从整体上看,netstat的输出结果可以分为两个部分:一个是Active.原创 2021-12-27 08:50:49 · 31823 阅读 · 0 评论 -
套接字编程简介(二)
目录字节排序函数字节操纵函数1. 源于4.2BSD以b开头的一组函数2. 源自ANSI C标准以mem开头的第二组函数地址转换函数inet_aton, inet_addr 和 inet_ntoa 函数inet_pton 和 inet_ntop 函数sock_ntop 和相关函数readn , writen , readline 函数字节排序函数内存中存储着两个字节有两种方法:一种将低序字节存储在起始地址,称为小端字节序,另一种方法是将高序...原创 2021-12-24 19:52:32 · 1210 阅读 · 0 评论 -
套接字编程简介(一)
套接字地地址结构原创 2021-12-23 19:38:29 · 639 阅读 · 0 评论 -
TCP端口号与并发服务器,缓冲区大小限制,TCP/UDP输出机制
TCP端口号与并发服务器并发服务器中主服务器循环通过派生一个子进程来处理每个新的连接。当服务器接收并接受这个客户的连接时,它fork一个自身的副本,让子进程来处理该客户的请求。TCP无法仅仅通过查看目的端口号来分离外来的分节到不同的端点,它必须查看套接字对的所有4个元素才能确定由哪个端点接收某个到达的分节。缓冲区大小及限制影响IP数据报大小的限制有哪些?(1) IPv4数据报的最大大小是65535字节,包括IPv4首部。因为其总长度字段...原创 2021-12-21 19:42:56 · 678 阅读 · 0 评论 -
端口号及套接字对
端口号逻辑意义上的端口,即TCP /IP协议中的端口,在报头中占2个字节即16位,范围是从0-65535。端口号用来表示和区别网络中的不同应用程序,即不同的进程。端口的分类(1)众所周知的端口 0 ~ 1023,这些端口由IANA分配和控制,明确绑定某些服务协议,不能随便分配。FTP : 21TELNET : 23SMTP : 25DNS : 53TFTP : 69HTTP : 80SNMP : 161SSH :22(2)注册端口 1024 ~ 49...原创 2021-12-21 16:53:58 · 1222 阅读 · 0 评论 -
TCP连接的建立与终止
TCP连接的建立与终止 1.服务器(通常通过调用socket、bind、listen来完成——“被动连接”)必须准备接受外来的连接。; 2.客户机(通过调用connect)发起“主动打开”。这将会导致客户TCP发送一个SYN(同步)分节——告诉服务器客户机将在该连接中发送的数据的初始序列号。 3.服务器必须确认(ACK)客户机的SYN(同步),同时服务器自己也发送依个SYN(同步)分节——告诉客户机服务器将在同一连接中发送的数据的初始序列号。(服务器在单个分节中发送SYN和对...原创 2021-12-20 22:45:08 · 1481 阅读 · 0 评论 -
TCP、UDP、SCTP概述
传输层:TCP、UDP和SCTP原创 2021-12-20 20:28:49 · 824 阅读 · 0 评论 -
UNIX网络编程卷1第一个时间获取程序简化版
第一个时间获取程序原创 2021-12-20 14:45:25 · 416 阅读 · 0 评论