socket 和 http

1. socket

1/ socket 是一个针对TCP和UDP编程的接口 可以借助它建立TCP连接(TCP和UDP协议属于传输层) 提供了网络通信能力

2/ socket 是对TCP / IP协议的封装 ( socket本身并不是协议 是一个调用接口(API)) 通过socket 才能使用TCP / IP协议


socket建立网络连接的步骤

建立socket连接至少需要一对套接字 其中一个运行于客户端--ClientSocket 另一个运行与服务器端--ServerSocket

1/ 服务器监听

服务器套接字病不定位具体的客户端套接字 而是出于等待连接的状态 实时监控网络状态 等待客户端的连接请求

2/ 客户端请求 客户端的套接字提出连接请求 要连接的目标是服务端的套接字

客户端的套接字必须首先描述它要连接的服务器的套接字 指出服务器端套接字的的地址和端口号 然后就向服务器端套接字提出连接请求

3/ 连接确认

但服务器端套接字监听到或者说接收到客户端套接字的连接请求时 就想赢客户端套接字的请求 建立一个新的线程 把服务器端套接字的描述发送给客户端 一旦客户端确认了词描述 双方就正式建立连接 

而服务器套接字继续处于监听状态 继续接收其他客户端套接字的请求


2. http

http协议 是属于应用层的面向对象协议 基于TCP连接 基于请求与响应模式的协议

主要解决如何包装数据 提供了封装或者显示数据的具体形式


http协议的主要特点

1/  支持客户/服务器模式

2/ 简单快速 

客户向服务器请求服务时 只需要传送请求方法(GET HEAD POST)和路径

由于http协议简单使得HTTP服务器的程序规模小 所以通信速度很快

3/ 灵活 

http允许传输任意类型的数据对象 正在传输的类型由Content-Type加以标记

4/ 无连接

限制每次连接只处理一个请求 服务器处理完客户的请求 并受到客户的应答后 端来连接

可以节省传输时间

5/ 无状态协议

对事物处理没有记忆能力 

吐过后续处理需要前面的信息 则必须重传 可能是每次连接传送的数据量增大 但是如果不需要先前的子女系则应答的很快


socket和http连接区别

1/ socket连接

长连接 --客户端和服务器端一旦建立起来连接将不会主动断掉 但由于各种环境因素可能会是连接断开

2/ http连接

短连接 --客户端向服务器端发送一次请求 服务器端响应后连接会立即断掉




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值