http连接 :短连接,客户端,服务器三次握手建立连接,服务器响应返回信息,连接关闭,一次性的
socket连接:长连接,客户端,服务器三次握手建立连接不中断(通过ip地址端口号定位进程)
及时通讯,客户端 客户端之间经过 服务器中转的(漫游)

----------------------------------

七层网络协议

OSI参考模式 TCP、IP参考模式
___________________________________

应用层
表示层 应用层
会话层
___________________________________
传输层 传输层
___________________________________
网络层 网际层
___________________________________
数据链路层
物理层 主机至网络层
___________________________________

网络请求三要素:

1: 网络:IP地址
每个电脑都有个IP地址 htp:192.168.3.2
访问谷歌服务器也一样,一个电脑,一个IP地址。

2: 端口号:用于标示进程的逻辑地址

电脑上的qq 端口号4000

3:传输协议
通讯的规则
常见协议:TCP,UDP,http
-------------------------------------------------------
4 服务器:就是个电脑,里面装了很多资源文件,用用户使用特定的 协议端口来访问的

4.1 例如我们拷教师机上的视频:使用

htp://192.168.3.251:21
解释 htp:协议名称,IP地址:192.168.3.251, 端口号:21

4.2 网络访问
http://ip:80/文件路径=>URL(统一资源定位)
解释 http:协议名称, ip:IP地址,80:端口号 文件路径:访问什么内容

5.1 资源类型是通过MimeType来区分的,告诉客户端是什么类型 的资源

例如:浏览器通过域名(ip地址)访问网络服务器,服务器返回了一个,视频、文本,图片....,浏览器通过MimeType来去分文件,用什么工具打开

5 网络访问解析

URL:确定要访问的资源
Request:要访问了
Connection:开始访问
。。。。。。
服务器返回结果

TCP &UDP (都是在传输层的 )

UDP(用户数据报协议)

- 将数据及数据源目的封装 到数据包中,不需要建立连接
- 每个数据包的大小限制早64K之内
- 因为无需连接,因此此协议为不可靠协议
- 不需要建立连接,速度快

有点像通过邮递员给你个目标地址,邮递东西,有大小限制
应用:教师机给给每个学生机发送数据,拼成视频文件
发送UDP协议的的文件,不建立连接,封装源地址,目标地址,每次发送一个不超过64k的小包,发过去,几个小包拼成一段视频!~

TCP(传输控制协议)

- 建立连接,形成传输数据的通道
- 在连接中进行大数据传输
- 通过三次握手完成连接,是可靠的协议,安全送达
- 必须建立连接,效率会略低

-----------------------------------------------------

Socket(套接字层,插座)

- Socket就是为网络服务提供的一种机制
- 通信连段都是Socket
- 网络通信其实就是Socket间的通信
- 数据在两个Socket间通过的IO传输//Input/Output写入,读出

1:socket(老刘解释):
socket就是网络连接,通过scoket建立网络连接之后,我就可以执行两个点之间的通讯。

2:socket之间是怎么通讯的?
预备知识:
端口是标示进程的。
文件的读取方式:通过二进制流方式读取的,指定不同的文件,就可以输出不同的位置,所有的I/O,都是文件操作。

当把CF框架中变量转化为,NS框架中变量时,需要在加上类型前面还要加个__bridge

//Scoket的具体实现

NS与CF互转需要桥接__bridge
NSInputStream:输入流
NSOutputStream:输出流

设定方法发送请求包括IP地址,端口
- ()
CFReadStreamRef readStream;
CFWriteStreamRef writeStream;

比较 http连接 vs socket连接的更多相关文章

  1. UrlConnection连接和Socket连接的区别

    关于UrlConnection连接和Socket连接的区别,只知道其中的原理如下: 抽象一点的说,Socket只是一个供上层调用的抽象接口,隐躲了传输层协议的细节. urlconnection 基于H ...

  2. TCP连接、Http连接与Socket连接

    1.TCP连接 手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接.TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上. ...

  3. 轮询、长轮询、长连接、socket连接、WebSocket

    轮询:客户端定时向服务器发送Ajax请求,服务器接到请求后马上返回响应信息并关闭连接. 优点:后端程序编写比较容易. 缺点:请求中有大半是无用,浪费带宽和服务器资源.(而每一次的 HTTP 请求和应答 ...

  4. 转 Cocos网络篇[3.2](3) ——Socket连接(1)

    Cocos网络篇[3.2](3) ——Socket连接(1) 2015-03-05 22:24:13 标签:network http socket cocos [唠叨] 在客户端游戏开发中,使用HTT ...

  5. Http和Socket连接区别

    相信不少初学手机联网开发的朋友都想知道Http与Socket连接究竟有什么区别,希望通过自己的浅显理解能对初学者有所帮助. 1.TCP连接 要想明白Socket连接,先要明白TCP连接.手机能够使用联 ...

  6. Http、tcp、Socket连接区别

    转自Http.tcp.Socket连接区别 相信不少初学手机联网开发的朋友都想知道Http与Socket连接究竟有什么区别,希望通过自己的浅显理解能对初学者有所帮助. 1.TCP连接 要想明白Sock ...

  7. Http和Socket连接的区别

    Http和Socket连接区别 相信不少初学手机联网开发的朋友都想知道Http与Socket连接究竟有什么区别,希望通过自己的浅显理解能对初学者有所帮助. 1.TCP连接 要想明白Socket连接,先 ...

  8. Http和Socket连接

    转自http://hi.baidu.com/%D2%B9%D1%A9%B3%E6/blog/item/d6a72d2bbf467cf2e7cd406d.html 相信不少初学手机联网开发的朋友都想知道 ...

  9. socket连接和http连接的区别

    socket连接和http连接的区别 HTTP协议:简单对象访问协议,对应于应用层  ,HTTP协议是基于TCP连接的 tcp协议:    对应于传输层 ip协议:     对应于网络层 TCP/IP ...

随机推荐

  1. leofs存储总结

    1.leofs角色 Account(账户).Bucket(对象桶).Object(对象), gateway.manager0.manager1.storage Account 一个account可以创 ...

  2. 扩展RBAC用户角色权限设计方案

    RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成“用户-角色- ...

  3. iOS开发——多线程篇——NSOperation(基于GCD多线程编程),下载图片并合成新图片

    一.NSOperation的基本概念1.简介NSOperation的作用配合使用NSOperation和NSOperationQueue也能实现多线程编程 NSOperation和NSOperatio ...

  4. iOS开发——UI进阶篇(十)导航控制器、微博详情页、控制器的View的生命周期

    一.导航控制器出栈 1.initWithRootViewController本质 UIViewController *vc = [[OneViewController alloc] init]; // ...

  5. 贴一下WC总结里提到的那道裸题吧。。。

    [bzoj4034][HAOI2015]T2 试题描述 有一棵点数为 N 的树,以点 1 为根,且树点有边权.然后有 M 个 操作,分为三种: 操作 1 :把某个节点 x 的点权增加 a . 操作 2 ...

  6. caffe学习系列(5):激活层介绍

    参考:http://www.cnblogs.com/denny402/p/5072507.html 主要介绍了各个激活函数.

  7. PHP输出控制(Output Control)函数

    ob_start 此函数将打开输出缓冲.当输出缓冲激活后,脚本将不会输出内容(除http标头外),相反需要输出的内容被存储在内部缓冲区中. 内部缓冲区的内容可以用 ob_get_contents() ...

  8. 9.9---n皇后问题(CC150)

    思路:首先写一个检查能不能摆的函数.boolean checkValid(int[] columns,int row1, int column1);意思是row1行摆在column1列可不可以. 然后 ...

  9. apscheduler 绿色版

    由于依赖EntryPoint,因此apscheduler在离线的方式(直接拷贝然后引用)使用时,会报错. 错误信息类似: No trigger by the name “interval/cron/d ...

  10. [转载]C++虚函数浅析

    原文:http://glgjing.github.io/blog/2015/01/03/c-plus-plus-xu-han-shu-qian-xi/ 感谢:单刀土豆 C++虚函数浅析 JAN 3RD ...