Showing posts with label lan. Show all posts
Showing posts with label lan. Show all posts

Wednesday, March 28, 2012

Named Pipes or TCP IP in LAN

I have read that Named pipes work faster/better in a LAN environment ? I
have a question.. so would it make sense if the Web Servers (IIS on Windows
2000) that talk to the database servers on the same LAN communicate via
Named pipes as opposed to TCPIP . Also same with regards to the business
tier thats also on the same LAN that talks to the databases that can
communicate using Named pipes
Please provide your inputs here . Currently we use TCPIP. Using SQL 2000HASSAN AFTER READING THIS YOU BE THE JUDGE
Named Pipes vs. TCP/IP Sockets
In a fast local area network (LAN) environment, Transmission Control
Protocol/Internet Protocol (TCP/IP) Sockets and Named Pipes clients are
comparable in terms of performance. However, the performance difference
between the TCP/IP Sockets and Named Pipes clients becomes apparent with
slower networks, such as across wide area networks (WANs) or dial-up
networks. This is because of the different ways the interprocess
communication (IPC) mechanisms communicate between peers.
For named pipes, network communications are typically more interactive. A
peer does not send data until another peer asks for it using a read command.
A network read typically involves a series of peek named pipes messages
before it begins to read the data. These can be very costly in a slow
network and cause excessive network traffic, which in turn affects other
network clients.
It is also important to clarify if you are talking about local pipes or
network pipes. If the server application is running locally on the computer
running an instance of Microsoft SQL ServerT 2000, the local Named Pipes
protocol is an option. Local named pipes runs in kernel mode and is
extremely fast.
For TCP/IP Sockets, data transmissions are more streamlined and have less
overhead. Data transmissions can also take advantage of TCP/IP Sockets
performance enhancement mechanisms such as windowing, delayed
acknowledgements, and so on, which can be very beneficial in a slow network.
Depending on the type of applications, such performance differences can be
significant.
TCP/IP Sockets also support a backlog queue, which can provide a limited
smoothing effect compared to named pipes that may lead to pipe busy errors
when you are attempting to connect to SQL Server.
In general, sockets are preferred in a slow LAN, WAN, or dial-up network,
whereas named pipes can be a better choice when network speed is not the
issue, as it offers more functionality, ease of use, and configuration
options.
"Hassan" <fatima_ja@.hotmail.com> wrote in message
news:ORNMyEE8DHA.3360@.tk2msftngp13.phx.gbl...
> I have read that Named pipes work faster/better in a LAN environment ? I
> have a question.. so would it make sense if the Web Servers (IIS on
Windows
> 2000) that talk to the database servers on the same LAN communicate via
> Named pipes as opposed to TCPIP . Also same with regards to the business
> tier thats also on the same LAN that talks to the databases that can
> communicate using Named pipes
> Please provide your inputs here . Currently we use TCPIP. Using SQL 2000
>

Named Pipes or TCP IP in LAN

I have read that Named pipes work faster/better in a LAN environment ? I
have a question.. so would it make sense if the Web Servers (IIS on Windows
2000) that talk to the database servers on the same LAN communicate via
Named pipes as opposed to TCPIP . Also same with regards to the business
tier thats also on the same LAN that talks to the databases that can
communicate using Named pipes
Please provide your inputs here . Currently we use TCPIP. Using SQL 2000HASSAN AFTER READING THIS YOU BE THE JUDGE
Named Pipes vs. TCP/IP Sockets
In a fast local area network (LAN) environment, Transmission Control
Protocol/Internet Protocol (TCP/IP) Sockets and Named Pipes clients are
comparable in terms of performance. However, the performance difference
between the TCP/IP Sockets and Named Pipes clients becomes apparent with
slower networks, such as across wide area networks (WANs) or dial-up
networks. This is because of the different ways the interprocess
communication (IPC) mechanisms communicate between peers.
For named pipes, network communications are typically more interactive. A
peer does not send data until another peer asks for it using a read command.
A network read typically involves a series of peek named pipes messages
before it begins to read the data. These can be very costly in a slow
network and cause excessive network traffic, which in turn affects other
network clients.
It is also important to clarify if you are talking about local pipes or
network pipes. If the server application is running locally on the computer
running an instance of Microsoft® SQL ServerT 2000, the local Named Pipes
protocol is an option. Local named pipes runs in kernel mode and is
extremely fast.
For TCP/IP Sockets, data transmissions are more streamlined and have less
overhead. Data transmissions can also take advantage of TCP/IP Sockets
performance enhancement mechanisms such as windowing, delayed
acknowledgements, and so on, which can be very beneficial in a slow network.
Depending on the type of applications, such performance differences can be
significant.
TCP/IP Sockets also support a backlog queue, which can provide a limited
smoothing effect compared to named pipes that may lead to pipe busy errors
when you are attempting to connect to SQL Server.
In general, sockets are preferred in a slow LAN, WAN, or dial-up network,
whereas named pipes can be a better choice when network speed is not the
issue, as it offers more functionality, ease of use, and configuration
options.
"Hassan" <fatima_ja@.hotmail.com> wrote in message
news:ORNMyEE8DHA.3360@.tk2msftngp13.phx.gbl...
> I have read that Named pipes work faster/better in a LAN environment ? I
> have a question.. so would it make sense if the Web Servers (IIS on
Windows
> 2000) that talk to the database servers on the same LAN communicate via
> Named pipes as opposed to TCPIP . Also same with regards to the business
> tier thats also on the same LAN that talks to the databases that can
> communicate using Named pipes
> Please provide your inputs here . Currently we use TCPIP. Using SQL 2000
>|||Another thing to consider with Named Pipes is that the
user's Windows user accounts must have permission to
establish a NetBEUI connection to the Windows box that
SQL Server is running on. This is not the case when
using TCP/IP Sockets.
Just out of curiosity, where did you read that Named
Pipes was faster/better in a LAN environment? The last
time I experienced Named Pipes to be noticeably faster
was with a 16 bit client.
Matthew Bando
matthew.bando@.CSCTGI(Remove this).com
>--Original Message--
>I have read that Named pipes work faster/better in a LAN
environment ? I
>have a question.. so would it make sense if the Web
Servers (IIS on Windows
>2000) that talk to the database servers on the same LAN
communicate via
>Named pipes as opposed to TCPIP . Also same with regards
to the business
>tier thats also on the same LAN that talks to the
databases that can
>communicate using Named pipes
>Please provide your inputs here . Currently we use
TCPIP. Using SQL 2000
>
>.
>

Named Pipe question

Hi,
I'm wondering when do I need to use the Named Pipes connection in our SQL
Server 2000 and clients environment?
If all our LAN are running on the TCP/IP, do we need to use the Name Pipes?
Thanks for help.
JasonNamed Pipes is used only for LANs. However it does not support routing and
gateways. As it requires more interaction between your server and your
client you'll need a fast network because of the extra burden (especially
when compared to TCP\IP).
If TCP\IP works fine for you, go with it and disable NP to free some
resources and close extra ways for potention intruders.
--
Ekrem Önsoy
"Jason Huang" <JasonHuang8888@.hotmail.com> wrote in message
news:uiQd%23KFIIHA.5400@.TK2MSFTNGP04.phx.gbl...
> Hi,
> I'm wondering when do I need to use the Named Pipes connection in our SQL
> Server 2000 and clients environment?
> If all our LAN are running on the TCP/IP, do we need to use the Name
> Pipes?
> Thanks for help.
>
> Jason
>|||> Named Pipes is used only for LANs. However it does not support
> routing and gateways.
It's true that you don't route named pipes. But it's also the case you don't
directly route any other SQL Server netlib protocols such as TCP/IP which in
this particular context is really meant to refer to sockets instead of TCP at
the transport layer or IP at the network layer. In other words, you don't
care whether you can directly route any of the session layer protocols such
as sockets, named pipes, or RPC as long as they are built on IP that is
routable.
I don't know all the ancient history of SQL Server, but since 7.0 at least
and possibly with 6.5, named pipes for all that matters are built on top of
TCP/IP and can rely on IP for routing at the network layer.
Linchi
"Ekrem Ã?nsoy" wrote:
> Named Pipes is used only for LANs. However it does not support routing and
> gateways. As it requires more interaction between your server and your
> client you'll need a fast network because of the extra burden (especially
> when compared to TCP\IP).
> If TCP\IP works fine for you, go with it and disable NP to free some
> resources and close extra ways for potention intruders.
> --
> Ekrem nsoy
>
> "Jason Huang" <JasonHuang8888@.hotmail.com> wrote in message
> news:uiQd%23KFIIHA.5400@.TK2MSFTNGP04.phx.gbl...
> > Hi,
> >
> > I'm wondering when do I need to use the Named Pipes connection in our SQL
> > Server 2000 and clients environment?
> > If all our LAN are running on the TCP/IP, do we need to use the Name
> > Pipes?
> > Thanks for help.
> >
> >
> > Jason
> >
>|||> I don't know all the ancient history of SQL Server, but since 7.0 at least
> and possibly with 6.5, named pipes for all that matters are built on top of
> TCP/IP and can rely on IP for routing at the network layer.
Here's how I understand it:
There are network protocols, such as:
TCP/IP (has routing functionality of course)
NetBEUI (very limited, if any, routing functionality)
IPX (original protocol in Novell)
A network protocol is of little use if we can't send data back and fort between application over
that network protocol. So, there are APIs:
NETBIOS (originally developed for NetBEUI, but is also supported over IP (requires WINS for name
resolution))
Sockets (not available for NetBEUI AFAIK, only TCP/IP)
Named Pipes (built on top of NETBIOS)
RPC (implemented and available over both NetBEUI and IP)
SPX (as I understand it, the API over IPX)
When MS released "their" SQL Server, they needed a way for the client app to communicate to the
server. They decided to go for Named Pipes and developed what we call "netlib". I.e., the MS
deveopers used the Named Pipes API (which is similar to reading and writing to a file from the
programmers perspective) when developing the Named Pipes netlib.
Over time, new netlibs were developed, where in 2000, this culminated in below list (netlibs using
the API):
Named Pipes
Sockets
RPC
VIA
SPX
There was never a netlib deveoped directly on top of NETBIOS, but indirectly through Named Pipes.
So, back to the original comment:
> but since 7.0 at least
> and possibly with 6.5, named pipes for all that matters are built on top of
> TCP/IP and can rely on IP for routing at the network layer.
Named Pipes uses NETBIOS, which available over IP, and hence is routable. This isn't tied to a
specific version of SQL Server.
--
Tibor Karaszi, SQL Server MVP
http://www.karaszi.com/sqlserver/default.asp
http://sqlblog.com/blogs/tibor_karaszi
"Linchi Shea" <LinchiShea@.discussions.microsoft.com> wrote in message
news:0A9D3D0D-2539-477C-8885-7CF2A55696F0@.microsoft.com...
>> Named Pipes is used only for LANs. However it does not support
>> routing and gateways.
> It's true that you don't route named pipes. But it's also the case you don't
> directly route any other SQL Server netlib protocols such as TCP/IP which in
> this particular context is really meant to refer to sockets instead of TCP at
> the transport layer or IP at the network layer. In other words, you don't
> care whether you can directly route any of the session layer protocols such
> as sockets, named pipes, or RPC as long as they are built on IP that is
> routable.
> I don't know all the ancient history of SQL Server, but since 7.0 at least
> and possibly with 6.5, named pipes for all that matters are built on top of
> TCP/IP and can rely on IP for routing at the network layer.
> Linchi
> "Ekrem Önsoy" wrote:
>> Named Pipes is used only for LANs. However it does not support routing and
>> gateways. As it requires more interaction between your server and your
>> client you'll need a fast network because of the extra burden (especially
>> when compared to TCP\IP).
>> If TCP\IP works fine for you, go with it and disable NP to free some
>> resources and close extra ways for potention intruders.
>> --
>> Ekrem nsoy
>>
>> "Jason Huang" <JasonHuang8888@.hotmail.com> wrote in message
>> news:uiQd%23KFIIHA.5400@.TK2MSFTNGP04.phx.gbl...
>> > Hi,
>> >
>> > I'm wondering when do I need to use the Named Pipes connection in our SQL
>> > Server 2000 and clients environment?
>> > If all our LAN are running on the TCP/IP, do we need to use the Name
>> > Pipes?
>> > Thanks for help.
>> >
>> >
>> > Jason
>> >