HTTP协议即超文本传送协议(Hypertext Transfer Protocol ),是Web联网的基础,也是手机联网常用的协议之一,HTTP协议是建立在TCP协议之上的一种应用。HTTP连接最显著的特点是客户端发送的每次请求 都需要服务器回送响应,在请求结束后,会主动释放连接。从建立连接到关闭连接的过程称为“一次连接”。
1) 网络接口层:
这一块主要主要涉及到一些物理传输,比如以太网,无线局域网
2) 网络层:
提供独立于硬件的逻辑寻址,实现物理地址与逻辑地址的转换.
在 TCP / IP 协议族中,网络层协议包括 IP 协议(网际协议),ICMP 协议( Internet 互联网控制报文协议),以及 IGMP 协议( Internet 组管理协议)
目前市场上应用的最多的是 32 位二进制的 IPv4 ,因为 IPv4 的地址已经不够用了,所以 128 位二进制的 IPv6 应用越来越广泛了(但是下面的介绍都是基于 IPv4 进行的)
IP:
TCP/IP 协议网络上的每一个网络适配器都有一个唯一的 IP 地址.
IP 地址是一个 32 位的地址,这个地址通常分成 4 端,每 8 个二进制为一段,但是为了方便阅读,通常会将每段都转换为十进制来显示,比如大家非常熟悉的 192.168.0.1
IP 地址分为两个部分:网络 ID && 主机 ID
绝大部分 IP 地址属于以下几类
A 类地址:IP 地址的前 8 位代表网络 ID ,后 24 位代表主机 ID。
B 类地址:IP 地址的前 16 位代表网络 ID ,后 16 位代表主机 ID。
C 类地址:IP 地址的前 24 位代表网络 ID ,后 8 位代表主机 ID。
这里能够很明显的看出 A 类地址能够提供出的网络 ID 较少,但是每个网络可以拥有非常多的主机
如果 32 位的 IP 地址以 0 开头,那么它就是一个 A 类地址。
如果 32 位的 IP 地址以 10 开头,那么它就是一个 B 类地址。
如果 32 位的 IP 地址以 110 开头,那么它就是一个 C 类地址。
那么转化为十进制(四段)的话,我们就能以第一段中的十进制数来区分 IP 地址到底是哪类地址了。
地址解析协议 ARP
简单的来说 ARP 的作用就是把 IP 地址映射为物理地址,而与之相反的 RARP(逆向 ARP)就是将物理地址映射为 IP 地址。
子网
前面提到了 IP 地址的分类,但是对于 A 类和 B 类地址来说,每个网络下的主机数量太多了,那么网络的传输会变得很低效,并且很不灵活。比如说 IP地址为 100.0.0.0 的 A 类地址,这个网络下的主机数量超过了 1600 万台。
所以子网掩码的出现就是为了解决这样的问题。
我们先回顾一下之前如何区分主机 IP 和网络 IP 的。
以 A 类地址 99.10.10.10 为例,前 8 位是网络 IP ,后 24 位是主机 IP 。(如下图)
子网掩码也是一个 32 为的二进制数,也可以用四个十进制数来分段,他的每一位对应着 IP 地址的相应位置,数值为 1 时代表的是非主机位,数值为 0 时代表是主机位。
由表格可以很清晰的看出,网络 IP 仍是由之前的分类来决定到底是多少位,主机 IP 则是由子网掩码值为 0 的位数来决定,剩下的则是子网 IP
应用层:
为网络排错,文件传输,远程控制和 Internet 操作提供具体的应用程序
应用层做为 TCP/IP 协议的最高层级,对于我们移动开发来说,是接触最多的。
运行在TCP协议上的协议:
HTTP(Hypertext Transfer Protocol,超文本传输协议),主要用于普通浏览。
HTTPS(Hypertext Transfer Protocol over Secure Socket Layer, or HTTP over SSL,安全超文本传输协议),HTTP协议的安全版本。
FTP(File Transfer Protocol,文件传输协议),由名知义,用于文件传输。
POP3(Post Office Protocol, version 3,邮局协议),收邮件用。
SMTP(Simple Mail Transfer Protocol,简单邮件传输协议),用来发送电子邮件。
TELNET(Teletype over the Network,网络电传),通过一个终端(terminal)登陆到网络。
SSH(Secure Shell,用于替代安全性差的TELNET),用于加密安全登陆用。