socket网络编程一些理解(未涉及代码)
2014-02-06 19:28
281 查看
从一些问题开始阐述我所理解的socket编程(基本)
---------------------------------------------------------------------------------------------------------------
1,socket 是什么?
socket 是一种网络中通信的概念。一种方式方法。利用此概念就能够设计出网络中互相访问的进程。
2,socket 解决的问题是什么?
网络间进程通信。(一台计算机要想访问另一台(网络可达)计算机,就必须通过本地进程访问另一端的一个进程)
3,网络中完全不相干的进程如何确定对方?
ip地址,协议,端口,标识了(网络中计算机)进程,网络中的进程通信就可以利用这个标志与其它进程进行交互。
4,网络中连接的模式?
绝大多数都是以 Client—Server模式。
.....(未完待续)
如果要想学好unix编程,就必须接受unix的哲学理念
---------------------------------------------------------------------------------------------------------------
unix的哲学理念其中之一就是 “一切皆文件”,都可以用“打开open –> 读写write/read –> 关闭close”模式来操作。
Socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO、打开、关闭)
.....(未完待续)
知识是零散的,非要组合便—>面目全非
---------------------------------------------------------------------------------------------------------------
这一切的一切就是利用一些函数组合实现不同功能,达到预期目的。
要想学好用这些函数,就必须掌握好函数的返回类型和形参列表。
1,双方建立连接
服务器端先初始化(socket),然后与端口绑定(bind),对端口进行监听(listen),调用(accept)阻塞,等待客户端连接。
(socket,bind,listen,这三个函数能够在服务端建立起一块区域,使得网络中其他主机可以访问)
(阻塞的概念可以理解为等待直到为止)
客户端初始化一个(socket),然后连接服务器(connect),如果连接成功,这时客户端与服务器端的连接就建立了。
2,数据交互
客户端发送数据请求,服务器端接收请求并处理请求,然后把回应数据发送给客户端,客户端读取数据,最后关闭连接,一次交互结束。
在unix中,主要就是i/o操作。用俗话说就是客户端写一个,服务器端读一个,服务器端读完了后写一个处理过的数据,客户端读取此处理过的。
这个过程循环,就是服务器的运行过程。
socket经典介绍图:
---------------------------------------------------------------------------------------------------------------
1,socket 是什么?
socket 是一种网络中通信的概念。一种方式方法。利用此概念就能够设计出网络中互相访问的进程。
2,socket 解决的问题是什么?
网络间进程通信。(一台计算机要想访问另一台(网络可达)计算机,就必须通过本地进程访问另一端的一个进程)
3,网络中完全不相干的进程如何确定对方?
ip地址,协议,端口,标识了(网络中计算机)进程,网络中的进程通信就可以利用这个标志与其它进程进行交互。
4,网络中连接的模式?
绝大多数都是以 Client—Server模式。
.....(未完待续)
如果要想学好unix编程,就必须接受unix的哲学理念
---------------------------------------------------------------------------------------------------------------
unix的哲学理念其中之一就是 “一切皆文件”,都可以用“打开open –> 读写write/read –> 关闭close”模式来操作。
Socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO、打开、关闭)
.....(未完待续)
知识是零散的,非要组合便—>面目全非
---------------------------------------------------------------------------------------------------------------
这一切的一切就是利用一些函数组合实现不同功能,达到预期目的。
要想学好用这些函数,就必须掌握好函数的返回类型和形参列表。
1,双方建立连接
服务器端先初始化(socket),然后与端口绑定(bind),对端口进行监听(listen),调用(accept)阻塞,等待客户端连接。
(socket,bind,listen,这三个函数能够在服务端建立起一块区域,使得网络中其他主机可以访问)
(阻塞的概念可以理解为等待直到为止)
客户端初始化一个(socket),然后连接服务器(connect),如果连接成功,这时客户端与服务器端的连接就建立了。
2,数据交互
客户端发送数据请求,服务器端接收请求并处理请求,然后把回应数据发送给客户端,客户端读取数据,最后关闭连接,一次交互结束。
在unix中,主要就是i/o操作。用俗话说就是客户端写一个,服务器端读一个,服务器端读完了后写一个处理过的数据,客户端读取此处理过的。
这个过程循环,就是服务器的运行过程。
socket经典介绍图:
相关文章推荐
- C# tcp/socket的一些代码
- java与c/c++进行socket通信的一些问题(1)-JSP教程,Java技巧及代码
- 根据一段代码理清一些变量,常量,数组,指针的关系及理解
- python网络编程学习笔记(五):socket的一些补充
- python网络编程学习笔记(五):socket的一些补充
- cocos-Lua设置热更搜索路径的理解(看公司代码的一些小想法)
- Python网络编程的一些代码片断与分析
- 操作系统(一)协作进程临界区一些代码理解--Peterson’s Solution
- 有关socket网络编程中一些概念的理解
- Unity网络通讯的一些理解——强联网socket
- 对spring JdbcTemplate 代码的一些理解
- 测试的一段小代码,关于javascript this 的一些理解
- 理解ATL中的一些汇编代码
- 涉及动画的一些代码
- 理解Socket网络编程Accept()函数
- keras一些example代码理解
- 【JavaScript】学习理解prototype原型时的一些代码片段
- 关于tcp协议断开连接以及在socket编程时候连接的一些理解
- 数据库操作中一些代码的理解
- Socket网络编程—简单聊天软件--2、服务器端代码