社区
非技术版
帖子详情
Named Pipe究竟是什么东西呢?走的是什么协议啊?
Garboy
2005-01-08 11:28:40
昨天配置一对Cisco PIX防火墙,对于TCP协议的数据包都开放,可是SQLServer 2000的客户端只能通过Named Pipe方式访问到位于防火墙另一端的数据库,用TCP/IP的1433端口反而不行。不知道为什么,听说这里很强,特来请教请教高手。
谢谢大家了!
...全文
1383
8
打赏
收藏
Named Pipe究竟是什么东西呢?走的是什么协议啊?
昨天配置一对Cisco PIX防火墙,对于TCP协议的数据包都开放,可是SQLServer 2000的客户端只能通过Named Pipe方式访问到位于防火墙另一端的数据库,用TCP/IP的1433端口反而不行。不知道为什么,听说这里很强,特来请教请教高手。 谢谢大家了!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Garboy
2005-01-10
打赏
举报
回复
呵呵,好详细,谢谢!
p.s.
to yesyesyes():不用选tcp/ip也可以连接的,只要选择了named pipe,其余的它成不成功都无所谓了,因为利用命名管道已经可以穿过防火墙通信了。
再次感谢各位!
NinGoo
2005-01-10
打赏
举报
回复
NetBios协议,呵呵
NinGoo
2005-01-10
打赏
举报
回复
Named Pipe命名管道是一种进程间通信的方法,windows不同主机间的命名管道好像是透过bios协议实现的。具体也不太清楚,找一个网络编程的书上应该有讲
NinGoo
2005-01-10
打赏
举报
回复
在Win32下提供的进程间通信方式有以下几种:
剪贴板Clipboard:在16位时代常使用的方式,CWnd类中提供了支持。
COM/DCOM:通过COM系统的代理存根方式进行进程间数据交换,但只能够表现在对接口函数的调用时传送数据,通过DCOM可以在不同主机间传送数据。
Dynamic Data Exchange (DDE):在16位时代常使用的方式。
File Mapping:文件映射,在32位系统中提供的新方法,可用来共享内存。
Mailslots:邮件槽,在32位系统中提供的新方法,可在不同主机间交换数据,分为服务器方和客户方,双方可以通过其进行数据交换,在Win9X下只支持邮件槽客户。
Pipes:管道,分为无名管道:在父子进程间交换数据;有名管道:可在不同主机间交换数据,分为服务器方和客户方,在Win9X下只支持有名管道客户。
RPC:远程过程调用,很少使用,原因有两个:复杂而且与UNIX系统的RCP并不完全兼容。但COM/DCOM的调用是建立在RPC的基础上的。
Windows Sockets:网络套接口,可在不同主机间交换数据,分为服务器方和客户方。(相关介绍见Visual C++/MFC入门教程 第六章 网络通信开发)
WM_COPYDATA:通过发送WM_COPYDATA消息并将数据放在参数中来传递数据给其他进程。
下面主要介绍一下命名管道的用法,命名管道是一个有名字,单向或双向的通信管道。管道的名称有两部分组成:计算机名和管道名,例如\\[host_name]\pipe\[pipe_name]\(括号内为参数)。对于同一主机来讲允许有多个同一命名管道的实例并且可以由不同的进程打开,但是不同的管道都有属于自己的管道缓冲区而且有自己的通讯环境互不影响,并且命名管道可以支持多个客户端连接一个服务器端。命名管道客户端不但可以与本机上的服务器通讯也可以同其他主机上的服务器通讯。
命名管道的连接和通讯采用如下方式:
在服务器端第一次创建命名管道后等待连接,当客户端连接成功后服务器端的命名管道就用作通讯用途。如果需要再次等待连接,服务器端就需要再次打开命名管道(创建一个命名管道的实例)并等待连接。
对于客户端每次打开命名管道后建立与服务器间的连接,然后就可以利用命名管道进行通信,如果需要建立第二个连接则需要再次打开管道和再次建立连接。
创建命名管道时需要指定一个主机名和管道名,对于客户端来说可以是如下格式:\\[host_name]\pipe\[pipe_name]\也可以是\\.\pipe\pipe_name\其中.表示本机。而服务器端只能够在指定本机作为主机名,即只能使用下面的格式:\\.\pipe_name\。此外需要记住,在同一主机上管道名称是唯一的,一个命名管道一旦被创建就不允许相同名称的管道再被创建。
yesyesyes
2005-01-10
打赏
举报
回复
我的意思是,在客户端运行cliconfg,把tcp/ip选上
Garboy
2005-01-10
打赏
举报
回复
嗯,还真不是防火墙的问题。
我只是想了解了解这个named pipe,它用的什么协议。
因为如果客户端选择tcp/ip,连接不上服务器;可客户端如果选择了named pipe,就可以了。
所以我觉得很奇怪,我明明开放了tcp协议,它连不上来,而非要通过named pipe才行。晕
感谢yesyesyes和幸福鸟的关注!
还望更多高手指教
xingfuniao
2005-01-08
打赏
举报
回复
這裡是很強,不過我還不夠強!!!
yesyesyes
2005-01-08
打赏
举报
回复
既然TCP协议的数据包都开放,就不是防火墙的问题了,查一下服务器端和客户端的网络配置,看tcp/ip选上了没有.
MySQL通信
协议
MySQL通信
协议
MySQL实现了四种通信
协议
TCP/IP
协议
,通常我们通过来连接MySQL,各种主要编程语言都是根据这个
协议
实现了连接模 Unix Socket
协议
,这个通常我们登入MySQL服务器中使用这个
协议
,因为要使用这个
协议
连接MySQL需要一个物理文件,文件的存放位置在配置文件中有定义,值得一提的是,这是所有
协议
中最高效的一个 Share
mysql 通信_Mysql四种通信
协议
一、通信
协议
1、TCP/IP
协议
> 通常我们通过这个
协议
来连接MySQL,各种主要编程语言都是根据这个
协议
实现了连接模块2、Unix Socket
协议
> 通常我们登入MySQL服务器中使用这个
协议
,因为要使用这个
协议
连接MySQL需要一个物理文件,文件的存放位置在配置文件中有定义,值得一提的是,这是所有
协议
中最高效的一个.3、Share Memory
协议
> 这个
协议
一般人不...
MySQL实现了四种通信
协议
MySQL实现了四种通信
协议
TCP/IP
协议
,通常我们通过来连接MySQL,各种主要编程语言都是根据这个
协议
实现了连接模块Unix Socket
协议
,这个通常我们登入MySQL服务器中使用这个
协议
,因为要使用这个
协议
连接MySQL需要一个物理文件,文件的存放位置在配置文件中有定义,值得一提的是,这是所有
协议
中最高效的一个。Share Memory
协议
,这个
协议
一般人不知道,肯定也没用过,因
MySQL实现的四种通信
协议
脏读又称无效数据的读出,是指在数据库访问中,事务T1将某一值修改,然后事务T2读取该值,此后T1因为某种原因撤销对该值的修改,这就导致了T2所读取到的数据是无效的。会导致丢失修改 MySQL实现了四种通信
协议
,包括TCP/IP,Socket,共享内存,命名管道 1.TCP/IP
协议
,通常我们通过来连接MySQL,各种主要编程语言都是根据这个
协议
实现了连接模块 2.Unix S
SQL Server 默认和命名实例连接问题-TCP/IP 端口
TCP/IP的基本工作原理这里就不浪费口水了。现在这网络年代,谁不知道TCP/IP啊。不要跟我抬杠说你偏就没听说过TCP/IP阿,真是这样那你得自己去补补课了。 TCP/IP
协议
有两个基本的
东西
,一个是IP地址, 另一个是端口号。 在SQL Server上使用TCP/IP
协议
是非常简单的。首先要对SQL Server所在机器的网卡配置好TCP/IP
协议
并得到一个I...
非技术版
11,850
社区成员
33,690
社区内容
发帖
与我相关
我的任务
非技术版
MS-SQL Server 非技术版
复制链接
扫一扫
分享
社区描述
MS-SQL Server 非技术版
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章