您的位置:首页 > 理论基础 > 计算机网络

TCP/IP端口以及sockets编程的一些问题以及算法一个

2014-04-28 23:44 375 查看
也只是抽时间看看书做做算法罢了.

这周看了网络端口和IP的各种定义,也算看得进去,因为解说是个逗...咳咳

我稍微总结了一下.

对于IP来说,他就像一个房子,而对于端口来说,就像是一个窗子或者是门.

但是在IP上可以有2^16个门,也就是说一个IP会有很多端口.

本地操作系统会给那些有需求的进程分配协议端口(protocol
port,即我们常说的端口),

每个协议端口由一个正整数标识,如:80,139,445,等等.

当目的主机接收到数据包后,将根据报文首部的目的端口号,

把数据发送到相应端口,而与此端口相对应的那个进程将会领取数据并等待下一组数据的到来.

其实端口就是队,操作系统为各个进程分配了不同的队,

数据包按照目的端口被推入相应的队中,等待被进程取用,在极特殊的情况下,这个队也是有可能溢出的,

不过操作系统允许各进程指定和调整自己的队的大小.

关于Scokets套接字,分为三个套接字流套接字,数据报套接字和原始套接字.

套接字,是支持TCP/IP的网络通信的基本操作单元,

可以看做是不同主机之间的进程进行双向通信的端点,

简单的说就是通信的两方的一种约定,用套接字中的相关函数来完成通信过程。

百度中这样定义流套接字:

流套接字(SOCK_STREAM):

流套接字用于提供面向连接、可靠的数据传输服务。该服务将保证数据能够实现无差错、无重复发送,并按顺序接收。流套接字之所以能够实现可靠的数据服务,原因在于其使用了传输控制协议,即TCP(The
Transmission Control Protocol)协议

我们在网络编程中使用的大多是流套接字.

参数包括IP地址,端口,以及TCP/IP协议.具体的套接字定义再次就不赘述....

算法的话这周就做了一个....还是爽哥问我之后我才做的...汗一个...

Given a sorted array, remove the duplicates in place such that each element appear only once and return the new length.

Do not allocate extra space for another array, you must do this in place with constant memory.

For example,

Given input array A =
[1,1,2]
,

Your function should return length =
2
, and A is now
[1,2]
.

大意是删除多余的数.因为该数组已经排序过了,所有就变得很容易.若是没有排序的话则要改动遍历的方式.

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: