SCTP
İnternet iletişim kuralları dizisi | ||
Katman | İletişim kuralları | |
7. | Uygulama katmanı | HTTP, DNS, SMTP, FTP, TFTP, UUCP, NNTP, SSL, SSH, IRC, SNMP, SIP, RTP, Telnet, ... |
6. | Sunum katmanı | ISO 8822, ISO 8823, ISO 8824, ITU-T T.73, ITU-T X.409, ... |
5. | Oturum katmanı | NFS, SMB, ISO 8326, ISO 8327, ITU-T T.6299, ... |
4. | Ulaşım katmanı | TCP, UDP, SCTP, DCCP, ... |
3. | Ağ katmanı | IP, IPv4, IPv6, ICMP, ARP, IGMP, IPX,... |
2. | Veri bağlantısı katmanı | Ethernet, HDLC, Wi-Fi, Token ring, FDDI, PPP, L2TP... |
1. | Donanım katmanı | ISDN, RS-232, EIA-422, RS-449, EIA-485, ... |
Akış kontrol iletişim protokolü
SCTP (İngilizce : Stream Control Transmission Protocol) taşıma katmanı (transport layer) protokollerinden biridir. TCP ve UDP gibi popüler olan protokollerle aynı işi yapar. Bu protokol mesaj karışıklığı anında mesajların sıralı ve güvenli bir şekilde iletimini sağlar. Bu protocol Signaling Transport(SIGTRAN) çalışma grubu tarafından 2000 yılında oluşturulmuştur.
Streamlarda mesajlaşmanın temeli
SCTP kendisine gelen verileri mesaj ve kontrol bilgileri olmak üzere parçalara ayırarak yerleştirir ve her bir parça kendisini tanımlayan başlıklara sahiptir. Her bir parça sadece bir tane kullanıcı mesajı içerir. SCTP parçaları SCTP paketlerinin içinde bulunurlar. İnternet protokolüne gönderilen SCTP paketleri bir tane paket başlığı oluşturur. SCTP gerek duyduğunda paketleri kontrol eder.
TCP ile karşılaştırırsak; SCTP işlem yönelimli olarak oluşturulabilir. Yani mesaj parçalarının arasında veri transferi gerçekleşir. Bu yönüyle UDP ile aynıdır. TCP ise stream yönelimlidir.Yani veriyi stream olarak taşır.
Veri parçalarındaki bağımsız birçok stream iletimi için SCTP’nin yeteneklerini tercih eder. Mesela web saydalarında ki resimler web sayfalarındaki textlerle birlikte gider. Aslında tek bir tane SCTP nin içinde birçok bağlantı paketlenir.
Paket içindeki her stream TCP tarafından korunur. SCTP stream içindeki mesajların sırasını belli eder. Bu farklı streamlar içindeki mesajların sıralamasının bağımsız olmasına izin verir. Yinede mesaj sıralaması isteğe bağlıdır.
SCTP özellikleri
- Doğrulama ve onay mekanizması (Flood ataklarından korur, veri parçalarının kaybolmasını veya kopyalanmasını haber verir.)
- Jumbo Ethernet yapısı için uygun hata denetimini geliştirir.
- Veri transferi için özel bir yol seçer ve yolun bağlantısın kontrol eder.
- Stream içindeki veri parçalarını dağıtmak
Taşıma katmanındaki protokollerin karşılaştırılması:
Taşıma katmanındaki protokollerin karşılaştırılması
Özellik | UDP | TCP | SCTP | DCCP |
---|---|---|---|---|
Bağlantı yönelimli | hayır | evet | evet | evet |
Güvenli iletim | hayır | evet | evet | hayır |
Güvensiz iletim | evet | hayır | evet | evet |
Mesaj sınırı koruma | evet | hayır | evet | evet |
Sıralı dağıtım | hayır | evet | evet | hayır |
Sırasız dağıtım | evet | hayır | evet | evet |
Veri Checksum | evet | evet | evet | belirsiz |
Checksum boyutu | 16 | 16 | 32 | belirsiz |
Karışıklık kontrolü | hayır | evet | evet | belirsiz |
Çoklu stream | hayır | hayır | evet | hayır |
Paketleme | hayır | evet | evet | hayır |
Paket yapısı
SCTP, TCP ve UDP’den daha basit bir paket yapısına sahiptir. İki temel bölümden oluşur.
- Common Header(Ortak başlık) ->bunun boyutu 12 byte’dir.
- Veri yığını ->Bu kısımda veri parçalara ayrılmış bir şekilde bulunmaktadır. Burada bulunan her bir parça için belirleyici bir kimlik bulunur.255 tane farklı belirleyici kimlik vardır. Bir parçanın boyutu en fazla 4 KB olabilir.
Güvenlik
SCTP güvenliği sağlamak için belirli özelliklerle dizayn edilmiştir. Yetkilendirme ve doğrulama için kullanılan çok büyük çerezler ve flood ataklarından korunmak için 4-way handshake yöntemi bu güvenlik yöntemlerinden biridir.(Bu TCP’de 3-way handshake….). Güvenlik için şifreleme yöntemi SCTP yapısında bulunmamaktadır. Güvenlik için bazen parmak izi iyi bir yol olabilir. Bazı işletim sistemleri SCTP varsayılan olarak destekler.