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

网站重新制作多久google重新收录wordpress 多站点主题

网站重新制作多久google重新收录,wordpress 多站点主题,文字网站建设,文老师网络规划设计师1.TCP:传输控制协议,位于传输层2.TCP的特性:a.使用流式套接字,数据连续,有顺序b.TCP是可靠传输,有有应答机制ACK,即收到数据后会明确告知发送方已收到数据;若发送方没有在预计时间收…

1.TCP:传输控制协议,位于传输层

2.TCP的特性:

a.使用流式套接字,数据连续,有顺序

b.TCP是可靠传输,有有应答机制ACK,即收到数据后会明确告知发送方已收到数据;若发送方没有在预计时间收到应答,则会自动重传刚刚的数据

c.TCP在建立连接后传输链路会一直存在

d.TCP为全双工通信,在同一时刻既可以收也可以发

e.为满足同时收发,TCP存在双缓冲区,每个大小为64k,当缓冲区满时,会发生相应阻塞

3.TCP的收发过程:

三次握手过程

1.客户端向服务端发送SYN连接请求信号和随机初始序列号 (Client ISN)

2.服务端向客户端发送ACK确认信号和SYN连接请求信号,并发送自己的随机初始序列号 (Server ISN)

3.客户端向服务端发送ACK确认信号

四次挥手过程

a.客户端向服务端发送FIN结束连接请求信号,和SYN连接请求信号

b.服务端向客户端发送ACK确认信号

c.服务端向客户端发送FIN结束连接请求信号和ACK确认信号

d.客户端向服务端发送ACK确认信号,连接结束

4.TCP函数的调用顺序

1)TCP服务端

a.socket()产生一个监听套接字

b.bind()绑定源地址

c.listen()监听

d.accept()建立连接,产生通信套接字,即三次握手过程

e.read(),write()

f.close()关闭监听套接字

2)TCP客户端

a.socket()产生一个套接字

b.accept()建立连接,产生通信套接字,即三次握手过程

c.read(),write()

d.close()关闭套接字

5.使用TCP从客户端向服务端发送一个照片文件

ser端

#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <strings.h>
#include <unistd.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <netinet/ip.h> /* superset of previous */
#include <time.h>
#include <netinet/in.h>
#include <arpa/inet.h>
typedef struct sockaddr *(SA);
int	main(int argc, char **argv)
{int fd=open("2.jpg", O_WRONLY|O_CREAT|O_TRUNC,0666);int listfd=socket(AF_INET,SOCK_STREAM,0);if(-1==listfd){perror("socket fail\n");return 1;}struct sockaddr_in ser,cil;bzero(&ser, sizeof(ser));bzero(&cil, sizeof(cil));socklen_t len=sizeof(cil);ser.sin_family=AF_INET;ser.sin_port=htons(50000);//127.0.0.1表示自己的ip地址,本机自己收发//ser.sin_addr.s_addr=inet_addr("127.0.0.1");ser.sin_addr.s_addr=INADDR_ANY;int ret=bind(listfd, (SA)&ser, sizeof(ser));if(-1==ret){perror("blind");return 1;}listen(listfd, 3);//三次握手的排队数int conn=accept(listfd, (SA)&cil, &len);//conn为通信套接字if(conn==-1){perror("accept");return 1;}while(1){char buf[1024]={0};//int ret=recv(conn, buf, sizeof(buf), 0);int ret=recvfrom(conn, buf, sizeof(buf), 0,(SA)&cil,&len);if(ret<=0)//==0说明对方连接断开{break;}write(fd, buf, ret);bzero(buf, sizeof(buf));strcpy(buf,"ok");send(conn, buf, strlen(buf), 0);}close(listfd);close(conn);return 0;
}

cli端

#include <string.h>
#include <strings.h>
#include <unistd.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <netinet/ip.h> /* superset of previous */
#include <time.h>
#include <fcntl.h>
typedef struct sockaddr *(SA);
int	main(int argc, char **argv)
{int fd=open("1.jpg", O_RDONLY);if(-1==fd){perror("open");return 1;}int conn=socket(AF_INET, SOCK_STREAM, 0);if(-1==conn){perror("socket");return 1;}struct sockaddr_in ser;bzero(&ser,sizeof(ser));ser.sin_family=AF_INET;ser.sin_port=htons(50000);ser.sin_addr.s_addr=INADDR_ANY;int ret=connect(conn, (SA)&ser, sizeof(ser));if(-1==ret){perror("connect error\n");return 1;}while (1){char buf[1024]={0};int ret=read(fd, buf, sizeof(buf));if(ret<=0){break;}send(conn, buf, ret, 0);bzero(buf, sizeof(buf));recv(conn, buf, sizeof(buf), 0);}close(conn);close(fd);return 0;
}

6.数据的粘包

发送方发送数据,接收方无法解析数据

解决方案:

a.设置边界

b.固定大小

c.自定义协议

http://www.dtcms.com/a/459418.html

相关文章:

  • 查看邮箱注册的网站辽宁省建设厅网站升级何时结束
  • 做一样的模板网站会被告侵权吗重庆市官方网站
  • 企业网站 费用discuz网站模板下载器
  • 兰州高端网站竞价培训班
  • 合肥网站建设设计外包logo设计免费在线生成
  • 哪些做直播卖食品的网站seo外链建设的方法有
  • 做汽车介绍视频的网站吗wordpress使用支付宝当面付
  • .net 网站优化西安旅游攻略自由行路线推荐
  • 博达网站建设流程wordpress安装完怎么恢复数据
  • 天津网站建设有哪些做静态页面的网站
  • 盐城快速建设网站找哪家淘宝商城的网站建设
  • 至少保存十个以上域名网站珠海网站建设搭建
  • 做淘宝联盟必须要有网站吗备案网站名称有什么用
  • 链接网站logo外贸网站建设工作室
  • h5网站如何做查域名备案信息
  • 离石做网站的公司微信信息流广告投放
  • 杭州市建设住房保障局网站查询公司信息去哪里查
  • 药品招商网站大全注册公司网站模板
  • 网站中弹出广告怎么做哪些方法可以建设网站
  • 上海网站建设领导品牌上海外贸网站推广方法
  • 做外贸那个网站好郑州炫彩网站建设
  • 网站建设小组实验报告如何获取免费的wordpress
  • 专做polo衫的网站精湛的网站建设
  • 眼睛网站开发古尔邦节网站建设
  • 网站开发项目开发app开发软件财务预测
  • 网站开发建设与维护做什么的建筑设计师网
  • 做360全景有什么网站大型手游网络游戏排行榜
  • 淮安做网站找哪家公司做企业网站设计与实现
  • 域名和网站建设哈尔滨网站建设模板
  • 镇江市住房和城乡建设局网站注册公司网上申请流程图