iOS开发之网络词汇概念理解

词汇汇总

TCP/IP、TCP、UDP、HTTP、Socket等

词汇解析:TCP/IP

百度百科:
Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求。通俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给因特网的每一台联网设备规定一个地址。

自我解读:
TCP/IP其实就是一系列协议的集合。计算机与计算机之间沟通必然和人类之间沟通是一样的道理,也需要制定一套规范的协议(也就是我们人类说话的语法)来约束双方进行数据的沟通。为什么是一系列协议呢?这个得从两个方面去解读:第一个方面是横向的,每一层都有很多的不同功能的协议;其次是纵向的,就是说整个计算机从整合数据到发送数据出去分了很多功能模块来分别处理复杂的过程,这就是网络中很重要的分层概念了。稍后会说到分层的概念以及TCP/IP到底分几层。

网络分层

为什么分层:
这在工业设计上是非常重要的概念也就是模块化。就是把一个具备不同功能的整体划分成很多个不同层次的模块。每一层模块做各司其职。这种设计思想也是为了服务市场,因为这样的话市场服务就能够细化,并且统一,大家只要遵循统一的规则协议去生产自己的产品就好了,我们的网络接口后者网络传输介质坏了可以直接换,不管你是什么牌子的,这就是遵守标准带来的方便。就好比说苹果手机和安卓手机一样,苹果手机特立独行,这样的话他就是唯一的,那么他的配件也就卖的非常贵了。

不同分层体系:
刚说到苹果手机和安卓手机,那么网络上其实也有两套分层标准,一套是ISO(国际标准化组织,注意不是iOS!!!敲黑板!!!)制定的OSI七层模型;还有一套就是我们的TCP/IP的四层模型(这是事实标准)。
PS: 虽然国际上认可的是OSI模型,因为这个更权威而且足够细致有七层,但是呢在制定这个标准的时候,TCP/IP这个标准已经执行过一段时间了,已经成为事实标准了,所以后面基本上大家都遵循TCP/IP标准,那么OSI模型就用来给大家研究问题和更好的理解网路结构。

OSI七层模型:
物理层
数据链路层
网络层
传输层
会话层
表示层
应用层

TCP/IP四层
网络接口层(物理层和数据链路层合并为网络接口层)
网络层
传输层
应用层(会话表示应用层统一为应用层)

具体的每一层有什么作用,都是用来干嘛的,可以参看文末的参考链接

为何叫TCP/IP协议族

因为在网络的分层结构中,每一层都是有很多的协议的,如果没有这些统一的协议,设备与设备之间是无法进行通信的,包括物理层打水晶头都是有标准的,要不然数据没法进行传输,就跟我们平时说话一样,你说的是中文,我说的是英语那这样的很难懂,有人说找个翻译,那这样的话还得找个不同厂商之间都支持的中间设备,那这样是多此一举的,所以才有了统一的标准协议
PS: 水晶头打法一般有两种568A、568B,一般现在遵循的是568B打法,网线一般有8根线的,1236负责数据通信,那么具体的线序标准打法:

橙白、橙、绿白、蓝、蓝白、绿、棕白、棕

跑题了,刚刚说到每一层都有每一层的协议,那么重要的两层是网络和传输层,网络层主要的协议为IP(internet protocol)协议,也叫可路由协议,是所以路由协议的基础,这一层很多的动态路由协议之类的;传输层主要有两个协议,具体如下:

  • TCP(Transmission Contorl Protocol)传输控制协议,控制的意思我的理解是具有确认重传机制,能够有效控制数据报文的传输,面向有连接的传输协议
  • UDP(User Datagram Protocol)用户数据报协议,我的意思理解是就像发电报一样,只管发不管收的,就像谍战片一样,约定好时间发报文就一定要发,即便外面有电报侦查车也得发,所以很危险([坏笑][坏笑][坏笑]),所以这个是实时的但是是不可靠的,面向无连接的传输协议

那么我们基本上用TCP也是比较多,除非一些实时性的比如说视频语音之类的会采用UDP之外很大程度上还是TCP居多,所以传输层就用TCP来代替,这样TCP/IP协议族就是这么来的。

词汇解析:TCP

上面讲了一点,那这里就不多讲了,我下面贴一下链接。重要的是TCP的三次握手和四次挥手。

  • 三次握手:客户端和服务器端通过三次握手建立连接,连接建立好之后就可以通过这个连接来传输应用数据。其中要了解是怎么样利用这里面的字段来实现确认和重传机制的。这个大家要搞清楚。一定要搞清楚确认是通过来什么来确认报文的正确性的,重传又是根据什么来重新传输一份数据的。这个很有可能面试会问到。
  • 四次挥手:客户端和服务端之间解除连接时候的机制。

链接如下:
《TCP/IP详解:卷一》-TCP部分讲解

词汇解析:Scoket

何为Scoket,这个大家可以百度下,相信大家可能百度一下之后,看下百度的说法:

socket(计算机专业术语)
网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。
建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,
TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口;HTTP是轿车,提供了
封装或者显示数据的具体形式;Socket是发动机,提供了网络通信的能力。
Socket的英文原义是“孔”或“插座”。作为BSD UNIX的进程通信机制,取后一种意思。通常也称作
"套接字",用于描述IP地址和端口,是一个通信链的句柄,可以用来实现不同虚拟机或不同计算机之
间的通信。在Internet上的主机一般运行了多个服务软件,同时提供几种服务。每种服务都打开一
个Socket,并绑定到一个端口上,不同的端口对应于不同的服务。Socket正如其英文原意那样,像
一个多孔插座。一台主机犹如布满各种插座的房间,每个插座有一个编号,有的插座提供220伏交流
电, 有的提供110伏交流电,有的则提供有线电视节目。 客户软件将插头插到不同编号的插座,就
可以得到不同的服务。

其实我想说下我的理解和看法。

首先Scoket是套接字编程,它是一套编程接口,方便我们开发人员更好的操作传输层建立客户端与服务端之间的连接。那怎么建立连接呢就需要我们去调起TCP发起连接请求,所以为了方便开发人员开发相应的功能和业务,就有了这个套接字编程Scoket编程。所以它不是一个协议。

未完待续...

参考链接

iOS网络协议----HTTP/TCP/IP浅析
浅谈 CFNetwork (附测试DEMO)
HTTP协议—— 简单认识TCP/IP协议
《TCP/IP详解:卷一》-TCP部分讲解
《TCP/IP详解 卷一:协议》读书笔记--概述
[深入浅出Cocoa]iOS网络编程之CFNetwork
[深入浅出Cocoa]Bonjour网络编程
懵逼的HTTP、Socket与TCP

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,980评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,422评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 143,130评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,553评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,408评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,326评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,720评论 3 386
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,373评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,678评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,722评论 2 312
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,486评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,335评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,738评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,009评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,283评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,692评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,893评论 2 335

推荐阅读更多精彩内容

  • 网络概念第一天 两台电脑怎么通过网络传输数据?怎样才能知道传输的是数据?谁摸过网线? 看电影,怎么看的?通过电流,...
    小吖朱阅读 1,519评论 0 1
  • 目录 网络基本概念 TCP/IP协议簇基本概念 HTTP 网络开发技术解决方案 数据解析 网络优化 1. 网络基本...
    Ryan___阅读 1,340评论 1 0
  • 1.这篇文章不是本人原创的,只是个人为了对这部分知识做一个整理和系统的输出而编辑成的,在此郑重地向本文所引用文章的...
    SOMCENT阅读 13,028评论 6 174
  • 协议基础 协议就是计算机之间通过网络实现通信时实现所达成的一种“约定”,这种约定使得那些由不同厂商的设备,不同的C...
    d9fc24a0c9a9阅读 2,334评论 0 6
  • 中秋之夜,重庆市璧山区秀湖公园(国家级湿地公园)随拍。
    小伟CQ阅读 198评论 0 0