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

怎么建设信息网站wordpress被黑

怎么建设信息网站,wordpress被黑,美食网站设计论文,微信网站怎么建立HTTP连接 HTTP协议即超文本传送协议(Hypertext Transfer Protocol )#xff0c;是Web联网的基础#xff0c;也是手机联网常用的协议之一#xff0c;HTTP协议是建立在TCP协议之上的一种应用。HTTP连接最显著的特点是客户端发送的每次请求都需要服务器回送响应#xff0c;在请…HTTP连接 HTTP协议即超文本传送协议(Hypertext Transfer Protocol )是Web联网的基础也是手机联网常用的协议之一HTTP协议是建立在TCP协议之上的一种应用。 HTTP连接最显著的特点是客户端发送的每次请求都需要服务器回送响应在请求结束后会主动释放连接。从建立连接到关闭连接的过程称为“一次连接”。 1在HTTP 1.0中客户端的每次请求都要求建立一次单独的连接在处理完本次请求后就自动释放连接。 2在HTTP 1.1中则可以在一次连接中处理多个请求并且多个请求可以重叠进行不需要等待一个请求结束后再发送下一个请求。 由于HTTP在每次请求结束后都会主动释放连接因此HTTP连接是一种“短连接”要保持客户端程序的在线状态需要不断地向服务器发起连接请求。通常 的做法是即时不需要获得任何数据客户端也保持每隔一段固定的时间向服务器发送一次“保持连接”的请求服务器在收到该请求后对客户端进行回复表明知道 客户端“在线”。若服务器长时间无法收到客户端的请求则认为客户端“下线”若客户端长时间无法收到服务器的回复则认为网络已经断开。 SOCKET原理 套接字socket概念 套接字socket是通信的基石是支持TCP/IP协议的网络通信的基本操作单元。它是网络通信过程中端点的抽象表示包含进行网络通信必须的五种信息连接使用的协议本地主机的IP地址本地进程的协议端口远地主机的IP地址远地进程的协议端口。 应用层通过传输层进行数据通信时TCP会遇到同时为多个应用程序进程提供并发服务的问题。多个TCP连接或多个应用程序进程可能需要通过同一个 TCP协议端口传输数据。为了区别不同的应用程序进程和连接许多计算机操作系统为应用程序与TCPIP协议交互提供了套接字(Socket)接口。应用层可以和传输层通过Socket接口区分来自不同应用程序进程或网络连接的通信实现数据传输的并发服务。 建立socket连接 建立Socket连接至少需要一对套接字其中一个运行于客户端称为ClientSocket 另一个运行于服务器端称为ServerSocket 。 套接字之间的连接过程分为三个步骤服务器监听客户端请求连接确认。 服务器监听服务器端套接字并不定位具体的客户端套接字而是处于等待连接的状态实时监控网络状态等待客户端的连接请求。 客户端请求指客户端的套接字提出连接请求要连接的目标是服务器端的套接字。为此客户端的套接字必须首先描述它要连接的服务器的套接字指出服务器端套接字的地址和端口号然后就向服务器端套接字提出连接请求。 连接确认当服务器端套接字监听到或者说接收到客户端套接字的连接请求时就响应客户端套接字的请求建立一个新的线程把服务器端套接字的描述发 给客户端一旦客户端确认了此描述双方就正式建立连接。而服务器端套接字继续处于监听状态继续接收其他客户端套接字的连接请求。 SOCKET连接与TCP连接 创建Socket连接时可以指定使用的传输层协议Socket可以支持不同的传输层协议TCP或UDP当使用TCP协议进行连接时该Socket连接就是一个TCP连接。 Socket连接与HTTP连接 由于通常情况下Socket连接就是TCP连接因此Socket连接一旦建立通信双方即可开始相互发送数据内容直到双方连接断开。但在实际网 络应用中客户端到服务器之间的通信往往需要穿越多个中间节点例如路由器、网关、防火墙等大部分防火墙默认会关闭长时间处于非活跃状态的连接而导致 Socket 连接断连因此需要通过轮询告诉网络该连接处于活跃状态。 而HTTP连接使用的是“请求—响应”的方式不仅在请求时需要先建立连接而且需要客户端向服务器发出请求后服务器端才能回复数据。 很多情况下需要服务器端主动向客户端推送数据保持客户端与服务器数据的实时与同步。此时若双方建立的是Socket连接服务器就可以直接将数 据传送给客户端若双方建立的是HTTP连接则服务器需要等到客户端发送一次请求后才能将数据传回给客户端因此客户端定时向服务器端发送连接请求 不仅可以保持在线同时也是在“询问”服务器是否有新的数据如果有就将数据传给客户端。TCP(Transmission Control Protocol) 传输控制协议 TCP是主机对主机层的传输控制协议提供可靠的连接服务采用三次握手确认建立一个连接: 位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent紧急) Sequence number(顺序号码) Acknowledge number(确认号码) TCP是什么 TCPTransmission Control Protocol 传输控制协议是一种面向连接的、可靠的、基于字节流的传输层通信协议。 具体的关于TCP是什么我不打算详细的说了当你看到这篇文章时我想你也知道TCP的概念了想要更深入的了解TCP的工作我们就继续。它只是一个超级麻烦的协议而它又是互联网的基础也是每个程序员必备的基本功。首先来看看OSI的七层模型 我们需要知道TCP工作在网络OSI的七层模型中的第四层——Transport层IP在第三层——Network层ARP在第二层——Data Link层在第二层上的数据我们把它叫Frame在第三层上的数据叫Packet第四层的数据叫Segment。 同时我们需要简单的知道数据从应用层发下来会在每一层都会加上头部信息进行封装然后再发送到数据接收端。这个基本的流程你需要知道就是每个数据都会经过数据的封装和解封装的过程。 在OSI七层模型中每一层的作用和对应的协议如下 TCP是一个协议那这个协议是如何定义的它的数据格式是什么样子的呢要进行更深层次的剖析就需要了解甚至是熟记TCP协议中每个字段的含义。哦来吧。 TCP头部 其中 ACK SYN 序号 这三个部分在以下会用到它们的介绍也在下面。 上面就是TCP协议头部的格式由于它太重要了是理解其它内容的基础下面就将每个字段的信息都详细的说明一下。 Source Port和Destination Port:分别占用16位表示源端口号和目的端口号用于区别主机中的不同进程而IP地址是用来区分不同的主机的源端口号和目的端口号配合上IP首部中的源IP地址和目的IP地址就能唯一的确定一个TCP连接Sequence Number:用来标识从TCP发端向TCP收端发送的数据字节流它表示在这个报文段中的的第一个数据字节在数据流中的序号主要用来解决网络报乱序的问题Acknowledgment Number:32位确认序列号包含发送确认的一端所期望收到的下一个序号因此确认序号应当是上次已成功收到数据字节序号加1。不过只有当标志位中的ACK标志下面介绍为1时该确认序列号的字段才有效。主要用来解决不丢包的问题Offset:给出首部中32 bit字的数目需要这个值是因为任选字段的长度是可变的。这个字段占4bit最多能表示15个32bit的的字即4*1560个字节的首部长度因此TCP最多有60字节的首部。然而没有任选字段正常的长度是20字节TCP Flags:TCP首部中有6个标志比特它们中的多个可同时被设置为1主要是用于操控TCP的状态机的依次为URGACKPSHRSTSYNFIN。每个标志位的意思如下URG此标志表示TCP包的紧急指针域后面马上就要说到有效用来保证TCP连接不被中断并且督促中间层设备要尽快处理这些数据 ACK此标志表示应答域有效就是说前面所说的TCP应答号将会包含在TCP数据包中有两个取值0和1为1的时候表示应答域有效反之为0 PSH这个标志位表示Push操作。所谓Push操作就是指在数据包到达接收端以后立即传送给应用程序而不是在缓冲区中排队 RST这个标志表示连接复位请求。用来复位那些产生错误的连接也被用来拒绝错误和非法的数据包 SYN表示同步序号用来建立连接。SYN标志位和ACK标志位搭配使用当连接请求的时候SYN1ACK0连接被响应的时候SYN1ACK1这个标志的数据包经常被用来进行端口扫描。扫描者发送一个只有SYN的数据包如果对方主机响应了一个数据包回来 就表明这台主机存在这个端口但是由于这种扫描方式只是进行TCP三次握手的第一次握手因此这种扫描的成功表示被扫描的机器不很安全一台安全的主机将会强制要求一个连接严格的进行TCP的三次握手 FIN 表示发送端已经达到数据末尾也就是说双方的数据传送完成没有数据可以传送了发送FIN标志位的TCP数据包后连接将被断开。这个标志的数据包也经常被用于进行端口扫描。 Window:窗口大小也就是有名的滑动窗口用来进行流量控制这是一个复杂的问题这篇博文中并不会进行总结的暂时需要的信息有 ACK TCP协议规定只有ACK1时有效也规定连接建立后所有发送的报文的ACK必须为1 SYN(SYNchronization) 在连接建立时用来同步序号。当SYN1而ACK0时表明这是一个连接请求报文。对方若同意建立连接则应在响应报文中使SYN1和ACK1. 因此, SYN置1就表示这是一个连接请求或连接接受报文。 FIN finis即完终结的意思 用来释放一个连接。当 FIN 1 时表明此报文段的发送方的数据已经发送完毕并要求释放连接。 三次握手的过程 多么清晰的一张图当然了也不是我画的我也只是引用过来说明问题了。 第一次握手建立连接。客户端发送连接请求报文段将SYN位置为1Sequence Number为x然后客户端进入SYN_SEND状态等待服务器的确认第二次握手服务器收到SYN报文段。服务器收到客户端的SYN报文段需要对这个SYN报文段进行确认设置Acknowledgment Number为x1(Sequence Number1)同时自己自己还要发送SYN请求信息将SYN位置为1Sequence Number为y服务器端将上述所有信息放到一个报文段即SYNACK报文段中一并发送给客户端此时服务器进入SYN_RECV状态第三次握手客户端收到服务器的SYNACK报文段。然后将Acknowledgment Number设置为y1向服务器发送ACK报文段这个报文段发送完毕以后客户端和服务器端都进入ESTABLISHED状态完成TCP三次握手。完成了三次握手客户端和服务器端就可以开始传送数据。以上就是TCP三次握手的总体介绍。 那四次分手呢 当客户端和服务器通过三次握手建立了TCP连接以后当数据传送完毕肯定是要断开TCP连接的啊。那对于TCP的断开连接这里就有了神秘的“四次分手”。 第一次分手主机1可以使客户端也可以是服务器端设置Sequence Number和Acknowledgment Number向主机2发送一个FIN报文段此时主机1进入FIN_WAIT_1状态这表示主机1没有数据要发送给主机2了第二次分手主机2收到了主机1发送的FIN报文段向主机1回一个ACK报文段Acknowledgment Number为Sequence Number加1主机1进入FIN_WAIT_2状态主机2告诉主机1我“同意”你的关闭请求第三次分手主机2向主机1发送FIN报文段请求关闭连接同时主机2进入LAST_ACK状态第四次分手主机1收到主机2发送的FIN报文段向主机2发送ACK报文段然后主机1进入TIME_WAIT状态主机2收到主机1的ACK报文段以后就关闭连接此时主机1等待2MSL后依然没有收到回复则证明Server端已正常关闭那好主机1也可以关闭连接了。至此TCP的四次分手就这么愉快的完成了。当你看到这里你的脑子里会有很多的疑问很多的不懂感觉很凌乱没事我们继续总结。 为什么要三次握手 在谢希仁著《计算机网络》第四版中讲“三次握手”的目的是“为了防止已失效的连接请求报文段突然又传送到了服务端因而产生错误”。在另一部经典的《计算机网络》一书中讲“三次握手”的目的是为了解决“网络中存在延迟的重复分组”的问题。 在谢希仁著《计算机网络》书中同时举了一个例子如下 “已失效的连接请求报文段”的产生在这样一种情况下client发出的第一个连接请求报文段并没有丢失而是在某个网络结点长时间的滞留了以致延误到连接释放以后的某个时间才到达server。本来这是一个早已失效的报文段。但server收到此失效的连接请求报文段后就误认为是client再次发出的一个新的连接请求。于是就向client发出确认报文段同意建立连接。假设不采用“三次握手”那么只要server发出确认新的连接就建立了。由于现在client并没有发出建立连接的请求因此不会理睬server的确认也不会向server发送数据。但server却以为新的运输连接已经建立并一直等待client发来数据。这样server的很多资源就白白浪费掉了。采用“三次握手”的办法可以防止上述现象发生。例如刚才那种情况client不会向server的确认发出确认。server由于收不到确认就知道client并没有要求建立连接。” 这就很明白了防止了服务器端的一直等待而浪费资源。 为什么要四次分手 那四次分手又是为何呢TCP协议是一种面向连接的、可靠的、基于字节流的运输层通信协议。TCP是全双工模式这就意味着当主机1发出FIN报文段时只是表示主机1已经没有数据要发送了主机1告诉主机2它的数据已经全部发送完毕了但是这个时候主机1还是可以接受来自主机2的数据当主机2返回ACK报文段时表示它已经知道主机1没有数据发送了但是主机2还是可以发送数据到主机1的当主机2也发送了FIN报文段时这个时候就表示主机2也没有数据要发送了就会告诉主机1我也没有数据要发送了之后彼此就会愉快的中断这次TCP连接。如果要正确的理解四次分手的原理就需要了解四次分手过程中的状态变化。 FIN_WAIT_1: 这个状态要好好解释一下其实FIN_WAIT_1和FIN_WAIT_2状态的真正含义都是表示等待对方的FIN报文。而这两种状态的区别是FIN_WAIT_1状态实际上是当SOCKET在ESTABLISHED状态时它想主动关闭连接向对方发送了FIN报文此时该SOCKET即进入到FIN_WAIT_1状态。而当对方回应ACK报文后则进入到FIN_WAIT_2状态当然在实际的正常情况下无论对方何种情况下都应该马上回应ACK报文所以FIN_WAIT_1状态一般是比较难见到的而FIN_WAIT_2状态还有时常常可以用netstat看到。主动方FIN_WAIT_2上面已经详细解释了这种状态实际上FIN_WAIT_2状态下的SOCKET表示半连接也即有一方要求close连接但另外还告诉对方我暂时还有点数据需要传送给你(ACK信息)稍后再关闭连接。主动方CLOSE_WAIT这种状态的含义其实是表示在等待关闭。怎么理解呢当对方close一个SOCKET后发送FIN报文给自己你系统毫无疑问地会回应一个ACK报文给对方此时则进入到CLOSE_WAIT状态。接下来呢实际上你真正需要考虑的事情是察看你是否还有数据发送给对方如果没有的话那么你也就可以 close这个SOCKET发送FIN报文给对方也即关闭连接。所以你在CLOSE_WAIT状态下需要完成的事情是等待你去关闭连接。被动方LAST_ACK: 这个状态还是比较容易好理解的它是被动关闭一方在发送FIN报文后最后等待对方的ACK报文。当收到ACK报文后也即可以进入到CLOSED可用状态了。被动方TIME_WAIT: 表示收到了对方的FIN报文并发送出了ACK报文就等2MSL后即可回到CLOSED可用状态了。如果FINWAIT1状态下收到了对方同时带FIN标志和ACK标志的报文时可以直接进入到TIME_WAIT状态而无须经过FIN_WAIT_2状态。主动方CLOSED: 表示连接中断。 实例: TCP的作用是流量控制主要是控制数据流的传输。下面以浏览网页为例根据自身理解来解释一下这个过程。注第二个ack属于代码段ack位 握手过程中传送的包里不包含数据三次握手完毕后客户端与服务器才正式开始传送数据。 第一次握手客户端发送syn包(synj)到服务器并进入SYN_SEND状态等待服务器确认 第二次握手服务器收到syn包必须确认客户的SYNackj1同时自己也发送一个SYN包synk即SYNACK包此时服务器进入SYN_RECV状态 第三次握手客户端收到服务器的SYNACK包向服务器发送确认包ACK(ackk1)此包发送完毕客户端和服务器进入ESTABLISHED状态完成三次握手。 握手过程中传送的包里不包含数据三次握手完毕后客户端与服务器才正式开始传送数据。理想状态下TCP连接一旦建立在通信双方中的任何一方主 动关闭连接之前TCP 连接都将被一直保持下去。断开连接时服务器和客户端均可以主动发起断开TCP连接的请求断开过程需要经过“四次握手”过程就不细写了就是服务器和客 户端交互最终确定断开 对应的实例 IP 192.168.1.116.3337 192.168.1.123.7788: S 3626544836:3626544836 IP 192.168.1.123.7788 192.168.1.116.3337: S 1739326486:1739326486 ack 3626544837 IP 192.168.1.116.3337 192.168.1.123.7788: ack 1739326487,ack 1 第一次握手192.168.1.116发送位码syn1,随机产生seq number3626544836的数据包到192.168.1.123,192.168.1.123由SYN1知道192.168.1.116要求建立联机; 第二次握手192.168.1.123收到请求后要确认联机信息向192.168.1.116发送ack number3626544837,syn1,ack1,随机产生seq1739326486的包; 第三次握手192.168.1.116收到后检查ack number是否正确即第一次发送的seq number1,以及位码ack是否为1若正确192.168.1.116会再发送ack number1739326487,ack1192.168.1.123收到后确认seqseq1,ack1则连接建立成功。  转载于:https://www.cnblogs.com/ziqian9206/p/7159044.html
http://www.zqtcl.cn/news/162094/

相关文章:

  • 上海做网站优化公司ps最好用的素材网站
  • 网站建设品牌推广seo制作公司网站
  • 个人网站服务器一年多少钱科技让生活更美好作文450字
  • 开学第一课汉字做网站网盘资源搜索神器
  • 备案网站应用服务树莓派用来做网站
  • 找装修公司上什么网站湘潭交通网站
  • php网站服务建设网站增加关键字
  • 免费视频网站制作泰州东方医院
  • 单位的网站怎样设计才美观手机开发者选项
  • 网站可以做软件检测吗重庆潼南网站建设价格
  • 忘记网站后台地址建设网站协议范本
  • 平面设计素材网站排行榜前十名程序员网站开发框架
  • 搭建一个网站需要多少钱搜搜
  • 做搜狗手机网站手工制作大全折纸
  • 万网站天眼查询个人信息
  • 一份优秀的网络推广方案名风seo软件
  • 自己建设一个网站步骤中文wordpress主题下载
  • 如何在中国建设银行网站转账成都网页设计培训学校哪家好
  • 青岛建设网站制作wordpress代码高亮显示
  • 品牌创意型网站建设仿 手机 网站模板html
  • 信息化建设期刊网站网络规划设计师 用途
  • 商城网站开发的完整流程图精灵网站建设
  • 网站开发技术描述asp网站建设下载
  • 十堰网站开发洛阳网站开发公司
  • 做盗版网站坂田网站建设推广公司
  • 怎么用织梦修改建设一个新的网站小程序无代码开发平台
  • 网站建设询价外贸网页制作公司哪家好
  • 网页设计与网站建设报告ckplayer整合WordPress
  • 厦门APP开发网站开发公司百度热搜榜单
  • 网站排名英文怎么说网页编辑器在线使用