APP开发实战21-Socket概念
2016-05-16 21:01
281 查看
6.5Socket介绍
6.5.1Socket概念
Socket是对TCP/IP协议的封装和应用,本身并不是协议,是应用层与TCP/IP协议族通信的中间软件抽象层,是一组接口(API)。Socket的出现只是使得程序员更方便地使用TCP/IP协议栈而已,是对TCP/IP协议的抽象,提供了许多针对TCP或者UDP编程的函数接口,比如create、listen、connect、accept、send、read和write等等。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。
TCP/IP只是一个协议栈,就像操作系统的运行机制一样,必须要具体实现,同时还要提供对外的操作接口,就像操作系统会提供标准的编程接口,比如win32编程接口一样;TCP/IP也要提供程序员做网络开发所用的接口,这就是Socket编程接口。
套接字(Socket)是通信的基石,是支持TCP/IP协议的网络通信的基本操作单元。它是网络通信过程中端点的抽象表示,包含进行网络通信必须的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远地主机的IP地址,远地进程的协议端口。
应用层通过传输层进行数据通信时,TCP会遇到同时为多个应用程序进程提供并发服务的问题。多个TCP连接或多个应用程序进程可能需要通过同一个
TCP协议端口传输数据。为了区别不同的应用程序进程和连接,许多计算机操作系统为应用程序与TCP/IP协议交互提供了套接字(Socket)接口。应用层可以和传输层通过Socket接口,区分来自不同应用程序进程或网络连接的通信,实现数据传输的并发服务。
相关文章推荐
- android开发二--------高德地图定位
- WebView同步App登陆后获取到的Cookie
- spark学习10之将spark的AppName设置为自动获取当前类名
- 了解UNITY中的多线程及使用多线程
- Android单元测试——辅助工具介绍
- Android属性动画完全解析(下),Interpolator和ViewPropertyAnimator的用法
- Android属性动画完全解析(中),ValueAnimator和ObjectAnimator的高级用法
- Android aidl Binder框架浅析
- Android属性动画完全解析(上),初识属性动画的基本用法
- Android瀑布流照片墙实现,体验不规则排列的美感
- Ex2010-10 Publishing Outlook Web App with TMG
- ios 官网文档翻译—Create a Table View(swift)
- 自定义控件的方法之一
- Android ListView功能扩展,实现高性能的瀑布流布局
- Android ListView异步加载图片乱序问题,原因分析及解决方案
- Android--第一行代码笔记 活动生命周期
- Android ListView工作原理完全解析,带你从源码的角度彻底理解
- Android Context完全解析,你所不知道的Context的各种细节
- Android --中间突出的底部导航栏布局简单实现
- Android自定义View的实现方法,带你一步步深入了解View(四)