Issue Details (XML | Word | Printable)

Key: CORE-3710
Type: New Feature New Feature
Status: Open Open
Priority: Major Major
Assignee: Unassigned
Reporter: CSRedRat
Votes: 1
Watchers: 2
Operations

If you were logged in you would be able to see more operations.
Firebird Core

SCTP protocol support

Created: 27/Dec/11 10:05 AM   Updated: 03/Jul/15 07:14 AM
Component/s: API / Client Library
Affects Version/s: 3.0 RC2
Fix Version/s: None

Environment: Modern network protocol SCTP


 Description  « Hide
Protection and reliability above all else. Nowadays, information plays a significant role in my life. In connection with this very appropriate introduction would be implementing the protocol SCTP (Stream Control Transmission Protocol - «transfer protocol with flow control"), a new version. This will provide protection against SYN-flood attacks, the establishment of a safe connection (using a four-handshake), as well as pleasant innovation in the form of the conservation message boundaries, multi-threading, unordered delivery, support for multiple interfaces. Implementation of this protocol allows the network to bring a new level of speed, reliability, security and data transmission capabilities over the network. Because the new protocol was created, taking into account shortcomings of TCP, in view of the network and make full use of their opportunities, and special attention was paid to safety and security.

It is high time to promote, SCTP everywhere! Given the current active movement towards IPv6. + A lot of goodies from this extract is another good protocol SPDY. You can not hinder the development of technologies and the need to push modern protocols to the masses. It remains to convince Microsoft's usefulness and necessity of these protocols and to persuade them to intensive implementation. By the way Firefox is already implementing a protocol support SPDY (expected in version 11), as well as support going into the popular web-server nginx.

 All   Comments   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Sean Leyne added a comment - 27/Dec/11 06:36 PM
Based on my reading of SCTP and SPDY, this case seems to be from a "fanboy" who knows nothing of the Firebird implementation and who has nothing better to do that "spout off" about technology without regard for it's applicability.

The adoption/implementation of SCTP would require almost a complete rewrite of the client/server communication protocol, to wrap FB messages into the SCTP messages. Further, Windows does not natively support SCTP, a third-party driver is required.

As for SPDY, I don't see that it has anything to do with Firebird functionality. SPDY is a networking protocol (experimental, has not been adopted by any standards org) developed primarily for transporting web content.

Popa Adrian Marius added a comment - 11/Feb/14 04:58 PM
I would go another route SCTP over DTLS over UDP like in the webRTC data channels but that is another discussion

https://groups.google.com/forum/#!msg/mozilla.dev.tech.network/EV5GVW24QWg/vTzkA2z9EAYJ
http://chimera.labs.oreilly.com/books/1230000000545/ch18.html#_signaling_and_session_negotiation

This feature i guess can be closed SCTP it's not so adopted as TCP replacement for a few reasons
http://stackoverflow.com/a/20290710/66242


Popa Adrian Marius added a comment - 02/Jul/15 03:14 PM
Another project is removing SCTP protocol

One thing that cought my eyes in the dragonfly changelog


The SCTP protocol (an alternative to TCP and UDP) has been removed. Its code was originally written at the beginning of the 2000s and having never been updated since then, it was starting to become a problem for the general evolution of the network stack.
Not having had any known user in 15 years, its removal was an obvious choice.

https://www.dragonflydigest.com/2015/01/16/15445.html
http://www.dragonflybsd.org/release42/

and the hn discussion https://news.ycombinator.com/item?id=9797932

Michal Kubeček added a comment - 03/Jul/15 07:14 AM
While the initial comment definitely sounds like a PR rather than a technical reasoning, there actually would be some technical merit in using SCTP. One of the key features of SCTP is the ability to mix multiple data streams into one SCTP connection; this could be used for auxiliary connections (events) and such implementation would be more natural and easier to handle than a secondary TCP connection. On the other hand, a sad fact is that a secondary TCP connection might still have better chance to get through most of today's firewalls than SCTP.

Anyway, even if we decide to add SCTP support (as an option, of course, the idea of SCTP replacing TCP is certainly out of question) - and I'm not really sure it's worth the effort - it's definitely not something to seriously consider for 3.0.

As for SPDY, I'm not really familiar with its design but it seems closely related to HTTP and I'm not sure it could be easily tweaked to work with Firebird wire protocol. I'm not even sure SPDY has some features that would really help Firebird and that can't be easily implemented in a different way.