Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SCTP protocol support [CORE3710] #4058

Open
firebird-automations opened this issue Dec 27, 2011 · 4 comments
Open

SCTP protocol support [CORE3710] #4058

firebird-automations opened this issue Dec 27, 2011 · 4 comments

Comments

@firebird-automations
Copy link
Collaborator

Submitted by: CSRedRat (csredrat)

Votes: 1

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.

@firebird-automations
Copy link
Collaborator Author

Commented by: Sean Leyne (seanleyne)

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.

@firebird-automations
Copy link
Collaborator Author

Commented by: @mariuz

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

@firebird-automations
Copy link
Collaborator Author

Commented by: @mariuz

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

@firebird-automations
Copy link
Collaborator Author

Commented by: @mkubecek

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant