Android TCP/IP 扫盲教程
- TCP/IP 是因特网的通信协议。
通信协议是对计算机必须遵守的规则的描写叙述。仅仅有遵守这些规则。计算机之间才干进行通信。
- 浏览器和server都在使用 TCP/IP
因特网浏览器和因特网server均使用 TCP/IP 来连接因特网。浏览器使用 TCP/IP 来訪问因特网server,server使用 TCP/IP 向浏览器传回 HTML。
- 电子邮件也使用 TCP/IP
- 因特网地址也是 TCP/IP
- TCP/IP 是用于因特网 (Internet) 的通信协议。
- 计算机通信协议
计算机通信协议是对那些计算机必须遵守以便彼此通信的规则的描写叙述。
- 什么是 TCP/IP?
TCP/IP 是供已连接因特网的计算机进行通信的通信协议。
TCP/IP 指传输控制协议/网际协议 (Transmission Control Protocol / Internet Protocol)。
TCP/IP 定义了电子设备(比方计算机)怎样连入因特网,以及数据怎样在它们之间传输的标准。
- 在 TCP/IP 内部
在 TCP/IP 中包括一系列用于处理数据通信的协议:
- TCP (传输控制协议) - 应用程序之间通信
- UDP (用户数据包协议) - 应用程序之间的简单通信
- IP (网际协议) - 计算机之间的通信
- ICMP (因特网消息控制协议) - 针对错误和状态
- DHCP (动态主机配置协议) - 针对动态寻址
你将在本教程中学习到很多其它关于这些标准的知识。
- TCP 使用固定的连接
TCP 用于应用程序之间的通信。
当应用程序希望通过 TCP 与还有一个应用程序通信时,它会发送一个通信请求。这个请求必须被送到一个确切的地址。在两方“握手”之后,TCP 将在两个应用程序之间建立一个全双工 (full-duplex) 的通信。
这个全双工的通信将占用两个计算机之间的通信线路。直到它被一方或两方关闭为止。
UDP 和 TCP 非常相似。可是更简单,同一时候可靠性低于 TCP。
- IP 是无连接的
IP 用于计算机之间的通信。
IP 是无连接的通信协议。它不会占用两个正在通信的计算机之间的通信线路。这样,IP 就减少了对网络线路的需求。每条线能够同一时候满足很多不同的计算机之间的通信须要。
通过 IP,消息(或者其它数据)被切割为小的独立的包,并通过因特网在计算机之间传送。
IP 负责将每一个包路由至它的目的地。
- IP 路由器
当一个 IP 包从一台计算机被发送。它会到达一个 IP 路由器。
IP 路由器负责将这个包路由至它的目的地,直接地或者通过其它的路由器。
在一个同样的通信中,一个包所经由的路径可能会和其它的包不同。
而路由器负责依据通信量、网络中的错误或者其它參数来进行正确地寻址。
- TCP/IP
TCP/IP 意味着 TCP 和 IP 在一起协同工作。
TCP 负责应用软件(比方你的浏览器)和网络软件之间的通信。
IP 负责计算机之间的通信。
TCP 负责将数据切割并装入 IP 包。然后在它们到达的时候又一次组合它们。
- TCP/IP 使用 32 个比特或者 4 个 0 到 255 之间的数字来为计算机编址。
- IP地址
每一个计算机必须有一个 IP 地址才可以连入因特网。
每一个 IP 包必须有一个地址才可以发送到还有一台计算机。
在本教程下一节,你会学习到很多其它关于 IP 地址和 IP 名称的知识。
- IP 地址包括 4 个数字:
这是你的 IP 地址:211.161.247.1
TCP/IP 使用 4 个数字来为计算机编址。每一个计算机必须有一个唯一的 4 个数字的地址。
数字在 0 到 255 之间。并由点号隔开,像这样:192.168.1.60
- TCP 使用固定的连接
TCP 用于应用程序之间的通信。
当应用程序希望通过 TCP 与还有一个应用程序通信时,它会发送一个通信请求。这个请求必须被送到一个确切的地址。在两方“握手”之后。TCP 将在两个应用程序之间建立一个全双工 (full-duplex) 的通信。
这个全双工的通信将占用两个计算机之间的通信线路,直到它被一方或两方关闭为止。
UDP 和 TCP 非常相似。可是更简单,同一时候可靠性低于 TCP。
- 32 比特 = 4 字节
TCP/IP 使用 32 个比特来编址。一个计算机字节是 8 比特。所以 TCP/IP 使用了 4 个字节。
一个计算机字节能够包括 256 个不同的值:
00000000、00000001、00000010、00000011、00000100、00000101、00000110、00000111、00001000 ....... 直到 11111111。
如今,你知道了为什么 TCP/IP 地址是介于 0 到 255 之间的 4 个数字。
- 域名
12 个阿拉伯数字非常难记忆。
使用一个名称更easy。
用于 TCP/IP 地址的名字被称为域名。
baidu.com 就是一个域名。
当你键入一个像 http://www.baidu.com 这种域名,域名会被一种 DNS 程序翻译为数字。
在全世界,数量庞大的 DNS server被连入因特网。DNS server负责将域名翻译为 TCP/IP 地址,同一时候负责使用新的域名信息更新彼此的系统。
- TCP/IP 是不同的通信协议的大集合。
- 协议族
TCP/IP 是基于 TCP 和 IP 这两个最初的协议之上的不同的通信协议的大的集合。
- TCP - 传输控制协议
TCP 用于从应用程序到网络的传输数据控制。
TCP 负责在数据传送之前将它们切割为 IP 包。然后在它们到达的时候将它们重组。
- IP - 网际协议
IP 负责计算机之间的通信。
IP 负责在因特网上发送和接收数据包。
- HTTP - 超文本传输协议
HTTP 负责 web server与 web 浏览器之间的通信。
HTTP 用于从 web client(浏览器)向 web server发送请求,并从 web server向 web client返回内容(网页)。
- HTTPS - 安全的 HTTP
HTTPS 负责在 web server和 web 浏览器之间的安全通信。
作为有代表性的应用,HTTPS 会用于处理信用卡交易和其它的敏感数据。
- SSL - 安全套接字层
SSL 协议用于为安全传输数据加密数据。
- SMTP - 简易邮件传输协议
SMTP 用于电子邮件的传输。
- MIME - 多用途因特网邮件扩展
MIME 协议使 SMTP 有能力通过 TCP/IP 网络传输多媒体文件。包含声音、视频和二进制数据。
- IMAP - 因特网消息訪问协议
IMAP 用于存储和取回电子邮件。
- POP - 邮局协议
POP 用于从电子邮件server向个人电脑下载电子邮件。
- FTP - 文件传输协议
FTP 负责计算机之间的文件传输。
- NTP - 网络时间协议
NTP 用于在计算机之间同步时间(钟)。
- DHCP - 动态主机配置协议
DHCP 用于向网络中的计算机分配动态 IP 地址。
- SNMP - 简单网络管理协议
SNMP 用于计算机网络的管理。
- LDAP - 轻量级的文件夹訪问协议
LDAP 用于从因特网搜集关于用户和电子邮件地址的信息。
- ICMP - 因特网消息控制协议
ICMP 负责网络中的错误处理。
- ARP - Address Resolution Protocol
ARP - 用于通过 IP 来查找基于 IP 地址的计算机网卡的硬件地址。
- RARP - Reverse Address Resolution Protocol
RARP 用于通过 IP 查找基于硬件地址的计算机网卡的 IP 地址。
- BOOTP - Boot Protocol
BOOTP 用于从网络启动计算机。
- PPTP - 点对点隧道协议
PPTP 用于私人网络之间的连接(隧道)。
- 电子邮件是 TCP/IP 最重要的应用之中的一个。
- 你不会用到...
当你写邮件时,你不会用到 TCP/IP。
当你写邮件时。你用到的是电子邮件程序。比如莲花软件的 Notes。微软公司出品的 Outlook,或者 Netscape Communicator ,或Foxmail等等。
- 邮件程序会用到...
你的电子邮件程序使用不同的 TCP/IP 协议:
- 使用 SMTP 来发送邮件
- 使用 POP 从邮件server下载邮件
- 使用 IMAP 连接到邮件server
- SMTP - 简单邮件传输协议
SMTP 协议用于传输电子邮件。
SMTP 负责把邮件发送到还有一台计算机。
通常情况下。邮件会被送到一台邮件server(SMTP server)。然后被送到还有一台(或几台)server,然后终于被送到它的目的地。
SMTP 也能够传送纯文本,可是无法传输诸如图片、声音或者电影之类的二进制数据。
SMTP 使用 MIME 协议通过 TCP/IP 网络来发送二进制数据。
MIME 协议会将二进制数据转换为纯文本。
- POP - 邮局协议
POP 协议被邮件程序用来取回邮件server上面的邮件。
假如你的邮件程序使用 POP。那么一旦它连接上邮件server。你的全部的邮件都会被下载到邮件程序中(或者称之为邮件client)。
- IMAP - 因特网消息訪问协议
与 POP 类似,IMAP 协议相同被邮件程序使用。
IMAP 协议与 POP 协议之间的主要差异是:假设 IMAP 连上了邮件server,它不会自己主动地将邮件下载到邮件程序之中。
IMAP 使你有能力在下载邮件之前先通过邮件server端查看他们。通过 IMAP,你能够选择下载这些邮件或者不过删除它们。
例如说你须要从不同的位置訪问邮件server,可是只希望回到办公室的时候再下载邮件,IMAP 在这样的情况下会非常实用。
Android TCP/IP 扫盲教程的更多相关文章
- android ------- TCP/IP
TCP/IP 是针对因特网的通信协议. 什么是 TCP/IP? TCP/IP 是供已连接因特网的计算机进行通信的通信协议. TCP/IP 指传输控制协议/网际协议 (Transmission Cont ...
- Android TCP/IP Socket Test
TCP/IP协议:Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本 ...
- Android扫盲教程大全经典教程全分享
Android扫盲教程大全经典教程全分享,相当于android的简单用户手册下载路径 Android扫盲教程大全经典教程全分享.rar
- Android网络编程系列 一 TCP/IP协议族
在学习和使用Android网路编程时,我们接触的仅仅是上层协议和接口如Apache的httpclient或者Android自带的httpURlconnection等等.对于这些接口的底层实现我们也有必 ...
- TCP/IP 教程
TCP/IP 是因特网的通信协议. 通信协议是对计算机必须遵守的规则的描述,只有遵守这些规则,计算机之间才能进行通信. 浏览器和服务器都在使用 TCP/IP 因特网浏览器和因特网服务器均使用 TCP/ ...
- 第88节:Java中的Ajax和ASP.NET和TCP/IP 教程和JSON
第88节:Java中的Ajax和Jquery ajax是什么?有什么用?原理,怎么用? ajax是asynchronous javascript and xml(异步javascript和xml),是 ...
- Android之从TCP/IP、HTTP看Socket通信
1.概念 TCP/IP:属于传输层/网络层协议.手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接.TCP协议可以对上层网络提供接口,使上层网络数据的传 ...
- Android平台下的TCP/IP传输(客户端)
在工科类项目中,嵌入式系统与软件系统或后台数据库之间的信息传输是实现“物联网”的一种必要的途径,对已简单概念的物联网,通常形式都是一个单片机/嵌入式系统实现数据的采集及其处理,通过蓝牙,wifi或者是 ...
- Android网络编程系列 一 TCP/IP协议族之链路层
这篇借鉴的文章主要是用于后续文章知识点的扩散,在此特作备份和扩散学习交流. 数据链路层有三个目的: 为IP模块发送和 接收IP数据报. 为ARP模块发送ARP请求和接收ARP应答. 为RARP发送RA ...
随机推荐
- maven构建geotools应用工程
前置条件 jdk1.7+eclipse+maven POM配置 <project xmlns="http://maven.apache.org/POM/4.0.0" xmln ...
- 检测应用的内存泄漏情况(shell)
写代码--调试--修BUG 改来改去可能还存在一些没发现的问题,在工程量大的时候更容易出现,例如内存泄漏这样的问题,严重影响着系统性能. 网上有些检测C程序是否存在内存泄漏的工具还不错的,例如valg ...
- asp.net web api客户端调用
服务接口 接口1: //Post:http://127.0.0.1/HY_WebApi/api/V2/Key/FunctionTest1 [HttpPost] public HttpResponseM ...
- Python之print字典
在python 下面一个包含中文字符串的列表(list)或字典,直接使用print会出现以下的结果: >>> adict={'a':'中文'} >>> print ...
- Android drawText 做到文字绝对居中
我们在android中经常会遇到自定义一些组件,因为现有的android组件是往往不能满足当下的需求的,今天就给大家介绍一下在自定义组建过程中用到的drawText不居中的问题的解决方案 首先大家看一 ...
- 以太坊客户端Geth命令用法-参数详解
Geth在以太坊智能合约开发中最常用的工具(必备开发工具),一个多用途的命令行工具. 熟悉Geth可以让我们有更好的效率,大家可收藏起来作为Geth命令用法手册. 本文主要是对geth help的翻译 ...
- Android Studio 升级到3.0 提示 java.lang.NoClassDefFoundError
Android Studio 升级到3.0 提示 java.lang.NoClassDefFoundError 这个问题折腾了2个小时,最后解决了,Stack Overflow 上也有一次类似的问题, ...
- 算法帖——用舞蹈链算法(Dancing Links)求解俄罗斯方块覆盖问题
问题的提出:如下图,用13块俄罗斯方块覆盖8*8的正方形.如何用计算机求解? 解决这类问题的方法不一而足,然而核心思想都是穷举法,不同的方法仅仅是对穷举法进行了优化 用13块不同形状的俄罗斯方块(每个 ...
- java基础回顾(2)
java中只有两种类型:基础类型.引用类型 8中基本类型:byte short int long float double char boolean,其中byte类型取值范围[-2^7~2^7-1] ...
- 爬起点小说 day01
先介绍下我自己爬起点小说的思路: 1.爬取所有的类型列表 a.链接存redis中 类型表:novel_list 具体每一种类型:bnovel_all_list(把novel_list和bnovel_l ...