File: README.xnet

package info (click to toggle)
firebird4.0 4.0.6.3221.ds6-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 41,964 kB
  • sloc: ansic: 393,248; cpp: 356,542; sql: 15,263; yacc: 8,713; fortran: 5,645; sh: 5,184; pascal: 3,328; makefile: 1,342; asm: 271; perl: 194; xml: 55; csh: 15; awk: 1
file content (28 lines) | stat: -rw-r--r-- 1,384 bytes parent folder | download | duplicates (16)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
XNET - new local protocol implementation (win32)
------------------------------------------------

Firebird 2.0 has replaced the former (often referred to as IPC or IPServer)
implementation of the local transport protocol with a new one, named XNET.

It serves exactly the same goal - provide an efficient way to connect to the
local server (without a remote node name in the connection string) - but it's
implemented differently, in order to address the known issues with the old
protocol. Generally speaking, both implementations use shared memory for
inter-process communication, but XNET eliminates usage of window messages to
deliver attachment requests and it also implements another synchronization
logic.

Advantages of the XNET protocol over IPServer:

  - it works with Classic Server
  - it works for non-interactive services and terminal sessions
  - it doesn't lock up when using a few connections simultaneously

From the performance point of view, they should behave similarly, although
XNET is expected to be slightly faster.

As for disadvantages, there's only one - implementations are not compatible
with each other. It means that your fbclient.dll version should match the
version of the used server binaries (fbserver.exe or fb_inet_server.exe),
otherwise you won't be able to establish a local connection (a TCP localhost
loopback will do the trick, of course).