IOS Socket 01-网络协议基础知识

1. 网络参考模型

OSI参考模型                                          TCP/IP参考模型

2. 七层简述

1)物理层:主要定义物理设备标准,如网线的接口类型、各种传输介质的传输速率等。主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后再转化为1、0,也就是常说的数模与模数转换)。这一层的数据叫做比特(bit),主要设备:集线器

2)数据链路层:主要将从物理层接收的数据进行MAC地址的封装与解封装。常把这一层的数据叫做帧,主要设备:网卡,交换机

3)网络层:选择合适的网间路由和交换结点,确保数据及时传送,将从下层接收到的数据进行IP地址的封装与解封装。常把这一层数据叫做数据包,主要设备:路由器。

4)传输层:定义了一些传输数据的协议和端口,如TCP、UDP协议,主要将从下层接收的数据进行分段和传输,到达目的地址后再进行重组,以往把这一层数据叫做段。

5)会话层:通过传输层建立数据传输通路。在系统之间发起会话或者接受会话请求(设备之间需要互相认识)

6)表示层:主要是进行对接收的数据进行解释、压缩与解压缩等,即把计算机能够识别的东西转化成人能够识别的东西(如图片、声音等)

7)应用层:主要是一些终端的应用,比如说FTP(各种文件下载)、浏览器、QQ等,可以将其理解为在电脑屏幕上可以看到的东西,也就是终端应用。

3. 联系

TCP/IP参考模型是OSI参考模型的简化版,简化成4个层。

4. TCP/IP协议

网络协议即网络中/互联网传递、管理信息的一些规范。如同人与人之间相互交流是需要遵循一定的规矩一样,计算机之间的相互通信需要共同遵守一定的规则,这些规则就称为网络协议。

TCP/IP协议是网络的基础,是Internet的语言,可以说没有TCP/IP协议就没有今天的互联网。

IP是网络层,TCP是传输层,UDP也是传输层。

5.TCP & UDP

TCP(传输控制协议)

建立连接,形成传输数据的通道

在连接中进行大数据传输(数据大小不受限制)

通过三次握手完成连接,是可靠协议,安全送达

必须建立连接,效率会稍低

UDP(用户数据报协议)

将数据及源和目的封装成数据包中,不需要建立连接

每个数据报的大小限制在64K之内

因为无需连接,因此是不可靠协议

不需要建立连接,速度快

6. 网络通讯要素

1)IP地址(唯一标示网络设备的):

网络中设备的标示

不易记忆,可以用主机名

本地回环地址:127.0.0.1 主机名:localhost

2)端口号(定位程序)

用于标示进程的逻辑地址,不同进程的标示

有效端口:0~65535,其中0~1024由系统使用或者保留端口,开发中不要使用1024以下的端口

3)传输协议(用什么样的方式进行交互)

通讯的规则

常见协议:TCP、UDP

4)URL(统一资源定位) http://ip:80/文件路径

5)http是数据传输格式协议,tcp是数据传输方式,tcp相当于邮寄信封或者是打电话,http相当于信或者打电话是英语还是国语沟通。

telnet的使用可以查看服务是否开启。例如 telnet 127.0.0.1 8888

了解完本篇知识后,可以开始看Socket知识:

IOS Socket 02-Socket基础知识

posted on 2016-05-04 16:59 alun-chen 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/alunchen/p/5459050.html

IOS Socket 01-网络协议基础知识相关推荐

  1. 计算机网络协议第一章,网络协议基础知识

    序    我计划开发一个系列专栏,将自己在网络方面的积累完善成一个系列知识,让读者的监督和拍砖督促自己并提高自己.如果在读本人的系列文章得到些许收获,那对我来说是更大的收获.    本系列的阅读应该不 ...

  2. 网络协议基础知识大全

    网络协议 计算机网络体系结构 OSI七层模型 TCP/IP模型 ☆ TCP/IP协议族 TCP和UDP 地址和端口号 端口号的确定 端口号与协议 TCP/IP TCP三次握手 ☆ 三次握手的原因 TC ...

  3. 多实例多进程网络编程PHP,php socket网络编程基础知识(四):多进程

    标签:status   传递   windows   返回   修改   队列   _for   响应   关联 说明 php在web编程时是不需要考虑多进程的,但整个php流程是涉及到多进程的,只不 ...

  4. Linux网络编程基础知识

    Linux网络编程基础知识 1. 协议的概念 1.1 什么是协议 1.2 典型协议 2 网络应用程序设计模式 2.1 C/S模式 2.2 B/S模式 2.3 优缺点 3 分层模型 3.1 OSI七层模 ...

  5. Linux Socket详解 大全 基础知识

    1. Socket基础概念: 1.1:形象类比: Socket和电话网络的概念可以做一个很好的类比: Linux 编程中所说的socket就如同一个端点,类比到电话网中,它就如同一个电话机. 而Soc ...

  6. eip协议通信_工业通讯 | EtherNET/IP协议基础知识(Part 3)||附视频讲解

    点击蓝字 关注我们 相关阅读: EtherNet/IP OSI参考模型及其物理层.数据链路层与网络层的功能特点: EtherNET/IP协议基础知识(Part 1)||附视频讲解 Encapsulat ...

  7. 网络技术入门(一):网络技术基础知识系统归结

    <网络技术入门>系列文章,分别从宏观硬件和微观数据传输角度说明网络传输过程.请期待后续系列文章. 自己写文章习惯性在每一个小节上做总结,有时候方便理解可以先看总结的内容. 本章主要是总结性 ...

  8. Java 网络编程基础知识

    Java 网络编程基础知识 基础概念 计算机网络的基本概念 ​ 网络:多台计算机使用网络设备互联在一起,计算机之间可以进行通信,这样就组成了一个计算机网络. ​ 网络设备:集线器(HUB),路由器,交 ...

  9. 网络服务器最基本的是文件,你可能想知道的15个网络常用基础知识

    原标题:你可能想知道的15个网络常用基础知识 网络是一个复杂的系统,涉及知识很多.现在腾正小超人给大家分享15个常用的网络基础知识: 1) 如何查看本机所开端口 用netstat -a -n命令查看! ...

最新文章

  1. pycharm配置远程调试docker
  2. FPGA最全科普总结
  3. (用微信扫的静态链接二维码)微信native支付模式官方提供的demo文件中的几个bug修正...
  4. bzoj 1007 : [HNOI2008]水平可见直线 计算几何
  5. php 离线 gis,在 Web 页面中使用离线地图
  6. 远程计算机怎么安装软件安装,轻松一步把电脑上的软件远程安装到电视上!
  7. Java String到int,Java int到String
  8. Android MVP+Retrofit(封装)+RxJava实例
  9. C语言大作业:车辆信息管理系统
  10. linux基础教程-黑马程序员汇总PDF
  11. linux查看cpu架构命令,linux查看cpu型号命令
  12. NLP自然语言处理CRF详解
  13. flask+ vue 开发二手书App
  14. java jbutton 文字颜色_java – 如何更改JButton的文本颜色
  15. 百度云生态分享日| 网络技术及应用主题沙龙圆满落幕
  16. 工笔佛像怎么看和基本线条怎么画
  17. Word2016自第3页开始添加连续页脚(除掉封面和目录)
  18. java精灵召唤_精灵召唤之梦游仙境
  19. 一次真实的入侵-------记对一足球推荐站点的渗透
  20. 【前端安全】密码安全

热门文章

  1. OpenAI挑战DOTA 2世界冠军OG,这是赌上人类尊严的决战
  2. 这套GitHub 1300星的NLP课程即将完结,视频授课,在线答疑丨课程
  3. MIT创业项目「智能美食餐厅」4月底登陆波士顿自由之路
  4. 英伟达新禁令:不能随便用GeForce显卡跑深度学习(挖矿可以)
  5. haproxy acl访问限制IP
  6. pl/sql操作数据库之触发器的使用
  7. Linux命令参数详细解析 mv
  8. do not back up文件夹属性
  9. golang 中io包用法(一)
  10. WORD中插入的公式与文字对不齐——公式比文字高——文字比公式低