当前位置: 首页 > wzjs >正文

曰本做爰网站电脑网络优化软件

曰本做爰网站,电脑网络优化软件,wordpress wp_term_relationships,网站后台怎么传图片基本概念 三次握手 主动发起连接请求端,发送SYN标志位,请求建立连接。携带数据包包号、数据字节数(0)、滑动窗口大小。 被动接收连接请求端,发送ACK标志位,同时携带SYN请求标志位。携带序号、确认序号、数据包包号、数据字节数…

基本概念

三次握手

主动发起连接请求端,发送SYN标志位,请求建立连接。携带数据包包号、数据字节数(0)、滑动窗口大小。

被动接收连接请求端,发送ACK标志位,同时携带SYN请求标志位。携带序号、确认序号、数据包包号、数据字节数(0)、滑动窗口大小。

主动发起连接请求端,发送ACK标志位,应答服务器连接请求。携带确认序号、数据包包号。

四次挥手

主动关闭连接请求端,发送FIN标志位。

被动关闭连接请求端,应答ACK标志位。            -------半关闭完成。

被动关闭连接请求端,发送FIN标志位。

主动关闭连接请求端,发送ACK标志位。            -------连接全部关闭

滑动窗口

发送给连接对端,本端缓冲区大小(实时),保证数据不会丢失。

出错处理封装函数

封装目的:在编程中突出逻辑,将错误处理与逻辑分开,且可以直接跳转man 手册

wacp.c

存放网络通信相关常用自定义函数

命名方式:系统调用函数首字符大写。

函数功能:调用系统调用函数,处理出错场景

联合gcc编译生成。

warp.h

存放网络通信相关常用自定义函数原型声明。

多进程并发服务器

客户端不变

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<unistd.h>
#include<arpa/inet.h>
#include<sys/wait.h>
#include<pthread.h>
#include<sys/socket.h>
#include<ctype.h>
#define SER_PORT 9003void sys_err(char* s){perror(s);exit(1);
}void catch_child(int signum)
{while((waitpid(0 , NULL , 0)) > 0);return;
}int main(int argc , char *argv[])
{pid_t pid;int cfd , lfd ;char buf[1024];struct sockaddr_in serv_addr , clit_addr;bzero(&serv_addr , sizeof(serv_addr));serv_addr.sin_family = AF_INET ;serv_addr.sin_port = htons(SER_PORT);serv_addr.sin_addr.s_addr = htonl(INADDR_ANY);socklen_t clit_len;lfd = socket(AF_INET , SOCK_STREAM , 0);if(lfd == -1)sys_err("socket error");int ret = bind(lfd , (struct sockaddr*)&serv_addr , sizeof(serv_addr));if(ret != 0)sys_err("bind error");listen(lfd , 128);clit_len = sizeof(clit_addr);while(1){cfd = accept(lfd , (struct sockaddr*)&serv_addr , &clit_len);if(cfd == -1)sys_err("accept error");pid = fork();if(pid < 0){sys_err("fork error");}else if(pid > 0){close(cfd);struct sigaction act;act.sa_handler = catch_child ;sigemptyset(&act.sa_mask);act.sa_flags = 0;sigaction(SIGCHLD , &act , NULL);continue;}else{close(lfd);break;}}if(pid == 0){int i , n ;while(1){n = read(cfd , buf , sizeof(buf));if(n == 0){close(cfd);exit(1);}for(i = 0 ; i < n  ; i++){buf[i] = toupper(buf[i]);}write(STDOUT_FILENO , buf ,n);write(cfd , buf , n);}}return 0 ;
}

多线程并发服务器

客户端不变

read函数返回值

1、>0 实际读到的字节数

2、=0 已经读到结尾(对端已经关闭) 

3、-1 进一步判断errno的值

errno = EAGAIN or EWOULDBLOCK 设置了非阻塞方式读。没有数据到达

errno = EINTE 慢速系统调用被中断

errno = "其他情况" 异常

http://www.dtcms.com/wzjs/173465.html

相关文章:

  • 上海地区网站建设软文推广媒体
  • 招聘企业网站建设模块关键词优化公司费用多少
  • 微信ios分身版下载宁波seo优化服务
  • asp.net网站建设教程广告投放平台排名
  • 商家自己做的商品信息查询网站搜索引擎竞价排名
  • wordpress手机pc自动切换杭州seo网站哪家好
  • wordpress登录注册界面宁波网站推广优化
  • 响应式网站的优缺点百度竞价渠道代理商
  • 做乳胶衣的网站社交网络推广方法
  • 均安建网站seo成都培训
  • 厦门找一家做网站的公司网站建设策划书
  • 网站建设 廊坊全文搜索引擎有哪些
  • 在那个网站上做设计赚钱关键词排名优化如何
  • php 企业 网站金华关键词优化平台
  • wordpress文章关联关键词优化快排
  • 贵阳市住房城乡建设局官方网站百度定位店铺位置怎么设置
  • 怎么看网站有没有收录深圳整合营销
  • html 做网站案例简单佛山网站建设公司哪家好
  • 网站建设工作总结6太原做网络推广的公司
  • 可靠的网站建设案例企业管理培训机构排名前十
  • 做动态网站有哪些平台关键词排名点击软件推荐
  • 怎么做网站的301友情链接出售
  • 网络规划设计师试题整站优化案例
  • 想做一个网站平台怎么做的火爆产品的推广文案
  • 上海网站建设公司案例杭州关键词排名提升
  • 亚马逊做deal的网站重庆百度快照优化排名
  • 申请渠道门户网站是什么意思口碑营销是什么
  • 苏州优化网站哪家好怎么制作网页推广
  • 基于html5的购物商城网站郑州百度推广代理公司
  • 宿州市做网站建设的公司快速提升网站关键词排名