什么是TCP/UDP协议:
TCP协议:是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂。“面向连接”就是在正式通信前必须要与对方建立起连接。比如你给别人打电话,必须等线路接通了、对方拿起话筒才能相互通话。你不用想象的那么复杂,你就这么认为:TCP协议它是很可靠的,速度会有点慢的,两点或多点之间是有种握手的感觉,互相信任的,好像中间有渠道捆在一起的,这样理解就很容易懂了。
UDP协议:是与TCP相对应的协议。它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去!我们如果把TCP比喻成打电话,那么UDP就是发传统的信件,发过去再说,管它死活,我只要我自己快捷高效就行。ping”命令”就是一个很好的应用。
TCP就像你的老婆,很可靠在家里帮你料理一切家务,而UDP就像你的情人,让你着迷让你的工作变得高效,让你的荷尔蒙变的高效,让你的金钱消费变的高效,同时也让你背负了意外险~~呵呵!
什么是SOCKET:
你经常听到人们谈论着“socket”,或许你还不知道它的确切含义。现在让我告诉你:它是使用标准Unix文件描述符(filedescriptor)和其它程序通讯的方式。什么?你也许听到一些Unix高手(hacker)这样说过:“呀,Unix中的一切就是文件!”那个家伙也许正在说到一个事实:Unix程序在执行任何形式的I/O的时候,程序是在读或者写一个文件描述符。一个文件描述符只是一个和打开的文件相关联的整数。但是(注意后面的话),这个文件可能是一个网络连接,FIFO,管道,终端,磁盘上的文件或者什么其它的东西。Unix中所有的东西就是文件!所以,你想和Internet上别的程序通讯的时候,你将要使用到文件描述符。
就此打住,我不想再多说过多的SOCKET概念,说白了就是一个概念,它是一种概念,系统为了实现这个概念提供了一个API接口给我们使用罢了,一切交给系统底层处理了。
什么是ISO/OSI参考模型:
什么?我晕,ISO/OSI 这是啥,呵呵。这个知识我认为有必要了解,什么全国计算机等级考试啦,程序员考试啦,软件设计师考试啦都会考到这个知识点。 有必要看看懂!一幅图搞定它,用不着去背这些概念,只要知道一些服务存在于哪层上面就可以了。
什么是多线程技术
相信大家在使用电脑的时候已经接触过这个名词,所谓的多线程用简单话来说就是在同一时间处理多项任务。那么如此说来无论在现实生活中还是在电脑上都存在着多线程(multithreading)这个说法,因此同样的是在现实生活中还是在电脑上通过多线程将可以有效提供工作效率。
这里给大家举个例子,比如你正在为家人准备晚餐,今天的晚餐将会由下面三道菜:烤鸡肉、土豆泥以及四季豆。如果打算以“单线程”的方式做这顿晚餐,那么你也许会首先把烤鸡肉做好,做好烤鸡肉之后再做土豆泥然后是四季豆。不幸的是当你把最后一道菜四季豆做好之后,你就会发现前面两道菜烤鸡肉和土豆泥早已经冷掉了。
如果你以“多线程”的方式做这顿晚餐又会是什么样的情形呢?比如你可以煮开水的同时把鸡肉从冰箱里取出来开始化冻并把烤箱打开进行预温,这两步是同步进行的。接下来,你可以选择开始给土豆削皮,当你削好皮之后你会发现这个时候水正好烧开了,这时你可以将削好的土豆放进开水里煮。与此同时你的鸡肉也已准备好同时烤箱也准备就序,这时你的烤鸡肉的操作也就可以同步进行了。由于四季豆并不需要花费你太长的时间,因此这个时候你可以把四季豆洗干净然后放在一边。等土豆快要煮好的时候,你也可以将四季豆放在锅里面一起蒸熟了。最后,把所有的东西装盘,晚上餐三道菜就此结束。
以上的语言我可以这样概括它:我吃了二个面包,不感觉饱,但是我吃最后个面包的时候就会明显感觉到它的存在! 下面我们继续吃最重要部分,最后个面包。