Socket和TcpClient有什么区别

原文:http://wxwinter.spaces.live.com/blog/cns!C36588978AFC344A!322.entry

回答: "网络编程中,使用Socket和TcpClient有什么区别" http://community.csdn.net/Expert/TopicView.asp?id=4971812
本人回贴1:
-----------------------------
物理层:HUB,网线
链路层:MAC,ARP,交换机
网络层:IP,ICMP,IGMP,路由器
传输层:TCP,UDP
会话层:HTTP,SMTP,FTP,POP3
表示层:SOAP,SSL
应用层:WebService的Method
-------------------------------
Socket是对网络层操作 TcpClient是对传输层操作 ASP.NET是对会话层操作
你可以用Socket访问IIS中的ASP.NET的页面,不过传输层,会话层的转换就要你自已用代码实现了
 
问: 你可以用Socket访问IIS中的ASP.NET的页面,不过传输层,会话层的转换就要你自已用代码实现了 ================================= 上面的话是什么意思?
本人回贴2: 如果你用Socket访问IIS,要做如下考虑:
网络层: 使用什么网络层协议,如IPV4还是IPV6;如果开发路由器也要考虑这个问题
传输层: 你要使用那种传输层协议,比如是TCP.
会话层: 你要使用那种会话层协议,如HTTP.
===================================================== 也就是说你可以用 Socket类.Send方法 发送如下字串的二进制到IIS // GET /?T1=234&T2=789&B1=%CC%E1%BD%BB HTTP/1.1 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */* Accept-Language: zh-cn Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705) Host: 192.168.0.2:81 Connection: Keep-Alive //
你会收用Receive到如下数据: // HTTP/1.0 200 OK MIME_version:1.0 Content_Type:text/html Content_Length:N
[input type=button] // 然后你可以将此数据解析成一个HTML页的按钮 ///////////////////////////////////////////////////////////
上面的操作就是: 网络层-----会话层,用Socket访问IIS中的ASP.NET的页面 传输层,会话层的转换自已用代码实现了
但是要这样做,WEB开发人员会死的很惨,所以WEB开发只要实现[会话层-----会话层]就可以了 他要要做的只是[form] 到IIS,Response到客户端。 而到了WebService的Method开发时,Response都不用考虑了
 
本人回贴3:
现在再说[Socket和TcpClient有什么区别]
Socket:网络层 TcpClient:传输层
当你只考虑:主机,端口,数据传输时,用TcpClient,或UdpClient 当你要考虑:IP封包,路由,IP数据包时,用Socket
还有NET中的Socket类提供了一些对Socket操作的高级封装,但同时无法实现一些Socket底部操作。
目前在NET中不建议使用Socket,就如现在不建议使用NET开发DirectX一样,虽然可以做到
等路由器,交换机都使用Win CE,集成Net类时,也许我上面的话会过时

Socket与TcpClient的区别(转载)的更多相关文章

  1. Socket与TcpClient的区别(转载)

    Socket和TcpClient有什么区别 原文:http://wxwinter.spaces.live.com/blog/cns!C36588978AFC344A!322.entry 回答: &qu ...

  2. Socket与TcpClient的区别

    原文:Socket与TcpClient的区别 Socket和TcpClient有什么区别 原文:http://wxwinter.spaces.live.com/blog/cns!C36588978AF ...

  3. iOS之 HTTP、Socket、TCP的区别(易混

    一.HTTP 是一种超文本传输协议,全名hypertext transfer protocol,从字面意思上可以看出该协议用于规定客户端与服务端之间的传输规则, 传输的内容不限于文本(任意类型的数据) ...

  4. apache与nginx日志文件的区别(转载)

    apache与nginx日志文件的区别 转载:http://www.xfcodes.com/apache/log/3270.htm 导读:apache与nginx日志文件的区别,在apache与ngi ...

  5. FB01与F-02的区别(转载)

    FB01与F-02的区别(转载) FB01 : a) ''Post Document'' b) No doc type as SA automatically comes. c) No automat ...

  6. TCP与UDP在socket编程中的区别 (网络收集转载)

    http://blog.chinaunix.net/uid-26421509-id-3814684.html 一.TCP与UDP的区别 基于连接与无连接  对系统资源的要求(TCP较多,UDP少)  ...

  7. socket编程中write、read和send、recv之间的区别~转载

    socket编程中write.read和send.recv之间的区别   http://blog.csdn.net/petershina/article/details/7946615 一旦,我们建立 ...

  8. node与socket.io搭配小例子-转载

    //服务端代码 io = require('socket.io').listen(app), fs = require('fs'), cookie=require('cookie'); request ...

  9. stdcall, cdecl, pascal 区别(转载)

    转载自:http://www.cnblogs.com/lidabo/archive/2012/11/21/2781484.html stdcall, cdecl, pascal 区别 这三个参数都是告 ...

随机推荐

  1. ListView自定义滑动条

    /** * 修改默认滑动条 */ private void SetSliderIcon() { try { Field f = AbsListView.class.getDeclaredField(& ...

  2. centos静默式安装Oracle11g

    1.   Centos及Oracle版本 Centos:CentOS release 6.4 (Final) Oracle:linux.x64_Oracle_11gR2_database 2.   硬 ...

  3. protected访问修饰符

    子类可以调用, 但实例化的对像不可调用  new object;

  4. 线段树:Segment Tree(单点修改/区间修改模板) C++

    线段树是非常有效的数据结构,可以快速的维护单点修改,区域修改,查询最大值,最小值等功能. 同时,它也很重要.如果有一天比赛,你卡在了一道线段树模板题目上,这就真的尴尬了.不过,随着时代的进步,题目也越 ...

  5. C++ list用法

    创建一个list实例并赋值: // 创建实例以及赋值 #include <iostream> #include <list> using namespace std; int ...

  6. uva 10125 - Sumsets

    题意: 输入n,然后输入n个数字,,要在这n个数字中找出a,b,c,d..满足a,b,c,d是不同元素,并且a + b + c = d...求出最大的d 直接暴力时间复杂度为O(n^4)..会超时.. ...

  7. memcached学习笔记——存储命令源码分析上篇

    原创文章,转载请标明,谢谢. 上一篇分析过memcached的连接模型,了解memcached是如何高效处理客户端连接,这一篇分析memcached源码中的process_update_command ...

  8. (转载)Python装饰器学习

    转载出处:http://www.cnblogs.com/rhcad/archive/2011/12/21/2295507.html 这是在Python学习小组上介绍的内容,现学现卖.多练习是好的学习方 ...

  9. instanceof操作符判断对象类型

    instanceof 的语法格式如下: myobject instanceof ExampleClass myobject:某类的对象引用 ExampleClass:某个类 class Quadran ...

  10. IIC 概述之24c系列存储器内存分析

    IIC 型号     容量      器件/业面寻址字节                   可寻址位       模块 24C01   128B      (1010)(A2)(A1)(A0)(0或 ...