İçeriğe atla

HTTP/2

HTTP/2 (orijinal ismi HTTP/2.0) Dünya Çapında Ağ Birliği (World Wide Web) tarafından kullanılan HTTP ağ protokolünün ikinci ana sürümüdür. SPDY tabanlıdır.[1] HTTP/2,[2] İnternet Mühendisliği Çalışma Kolu'nun (Internet Engineering Task Force) Hiper Metin İletim Protokolü çalışma grubu(httpbis, bis burada “tekrar” veya “iki defa” anlamına gelmektedir.) tarafından geliştirilmiştir.[3] HTTP/2, 1997'de RFC 2068 bünyesinde standart haline getirilen HTTP 1.1'den beri gelen ilk yeni HTTP sürümüdür. Çalışma grubu HTTP/2'yi IESG'ye (Internet Engineering Steering Group – İnternet Mühendisliği Yürütme Grubu) önerilen standart olarak incelenmesi için 2014 Aralık ayında sunmuştur[4][5] ve IESG 17 Şubat 2015'te bunun önerilen standart olarak yayınlanmasını onaylamıştır.[6][7] HTTP/2 belirtimi 2015 Mayıs ayında RFC 7540 olarak yayınlanmıştır.[8]

Standartlaştırma çabası Chrome, Opera, Firefox, Internet Explorer 11, Safari, Amazon Silk ve Edge tarayıcıları tarafından desteklenmiştir.[9] Çoğu ana tarayıcı 2015 sonuna kadar HTTP/2 desteğini sağlamıştır.

W3Techs‘e göre, 2015 Kasım ayı gibi en iyi 10 milyon web sitesinin %2,3'ü HTTP/2'yi destekleyecektir.[10]

Amaçlar

Çalışma grubu tüzüğü çeşitli amaç ve endişe verici sorunlardan bahseder:[3]

  • İstemci ve sunuculara HTTP1.1, 2.0 ve potansiyel HTTP olmayan protokolleri seçmeye izin veren uzlaşma mekanizması.
  • HTTP 1.1 ile yüksek seviyede uyumluluğu sürdürmek (örneğin talep metotları, durum kodları, tekdüzen kaynak tanımlayıcıları - URI ve diğer başlık alanları-header field ile uyumluluk)
  • Aşağıdakiler göz önünde tutularak web tarayıcılarındaki sayfa yüklenme hızını yükseltmek için gecikme süresini azaltmak:
    • HTTP başlıklarının veri sıkıştırması
    • Sunucu itme (push) teknolojileri
    • Taleplerin Boru hattı
    • HTTP 1'deki satır başı engelleme sorununu(head-of-line blocking) çözmek
    • Tekil bir TCP(İletim Kontrol Protokolü) bağlantısı üzerindeki birden fazla talebi çoklama
  • Masaüstü web tarayıcıları, mobil web tarayıcıları, web API'leri (Uygulama programlama arayüzü), çeşitli ölçekteki web sunucuları, güvenlik duvarları ve içerik dağıtım ağları (CDN) gibi yaygın kullanımı olan HTTP örneklerini desteklemek

HTTP 1.1'den Farkları

Amaçlanan değişiklikler, mevcut web uygulamalarının çalışma şeklinde herhangi bir değişimi gerektirmez ama yeni uygulamalar artırılmış hız avantajını kullanabilirler.[11]

HTTP/2; talep metotları, durum kodları ve tekdüzen kaynak tanımlayıcıları- URI gibi HTTP 1.1'in yüksek seviyeli söz dizimlerinin çoğunu olduğu gibi bırakmaktadır. Değiştirilen unsur ise verinin sunucu ve istemci arasında çerçevelenme ve taşınma şeklidir.[11]

Yüksek verimli web siteleri, resim ve yazı betikleri gibi kaynakları minifying (kodun işlevinde bir kayba neden olmadan, kod miktarını azaltmak ve kod demetine giren kodları daha küçük boyutlarda paketlemek) yaparak tüm bir sayfayı oluşturmak için gereken talep sayısını en düşük seviyeye çeker.  Fakat minifying yöntemi ne gerektiği kadar elverişlidir ne de verimli ve hala sayfaya ve minify edilmiş kaynaklara ulaşmak için ayrı HTTP bağlantısı talep edebilir. HTTP/2, sunucuya istemcinin talep ettiğinden daha fazla sorgu için veri ile cevap vermek adına olan itici içeriğe izin vermektedir. Bu ilk yanıtı incelemek adına tarayıcıyı beklemeksizin ve fazladan bir talep çevriminin ek yükü olmaksızın sunucuya bir web tarayıcısının bir web sayfasını oluşturmak için ihtiyaç duyacağını bilen veriyi sağlamaya izin verir.[12]

HTTP/2'nin ilk taslağında (SPDY'nin bir kopyası idi) yer alan ek performans gelişimleri, HTTP 1(HTTP Boru hattı kullanılmış olsa bile) başlık sıkıştırma ve taleplerin önceliklerindeki başlık satırı engelleme sorunundan kaçınmak için talep ve yanıtları çoklamaktan gelmektedir. .[13]

SPDY'den başlangıçtaki ve sonraki farklılıklar

SPDY ("speedy" olarak telaffuz edilir) Google tarafından öncülük edilen bir araştırma projesi ile geliştirilen önceki bir HTTP yenileme protokolüdür.[14] SPDY esasen gecikme süresini azaltmaya odaklanır. SPDY aynı TCP borusunu kullanır ama gecikmeyi azaltmak için farklı protokol kullanır. SPDY'yi oluşturmak için HTTP 1.1'e yapılan temel değişiklikler: "FIFO sınırlamaları olmaksızın doğru talep boru hatlanması, sunucu ve istemci gelişimini basitleştirmek için ileti çevreleme mekanizması, zorunlu sıkıştırma (başlıklar dahil), öncelikli zamanlama ve hatta çift yönlü iletişim".[15]

httpbis çalışma grubu Google'ın SPDY protokolünü, Microsoft'un HTTP Speed+Mobility önerisini (SPDY tabanlıdır),[14] ve Ağ Uyumlu HTTP Yükseltilmesini inceledi.[16] 2012 Temmuz ayında Facebook her bir öneri için geri bildirim sağladı ve SPDY tabanlı HTTP/2'yi önerdi.[17] HTTP/2'nin ilk taslağı 2012 Kasım ayında yayınlandı ve SPDY'nin doğrudan bir kopyasına dayanıyordu.[18]

HTTP/1.1 ve SPDY arasındaki en büyük fark SPDY'de her bir kullanıcı hareketine kullanıcıdan sunucuya tekil bir TCP kanalı bağlantısı olduğu manasına gelen bir akış kimlik numarası verilmesidir. SPDY talepleri ya kontrole ya da  "ikili protokolü iki tür çerçeve ile bölmesi kolay"[15] olan veriye böler. SPDY yeni sayfa yüklenme hızında %11.81'den %47.7'e kadar uzanan artış ile HTTP'ye göre belirgin gelişim göstermiştir.[19]

SPDY kullanan HTTP/2 gelişimi bir başlangıç noktası gibidir. Protokol arasında birçok detaylı farklılığın içinde en göze çarpıcı olanı HTTP/2'nin SPDY'nin dinamik akım tabanlı sıkıştırma yerine sabit bir Huffman kodu tabanlı başlık sıkıştırma algoritması kullanmasıdır. Bu CRIME saldırıları gibi protokol üzerindeki sıkıştırmayı kullanan saldırıların(compression oracle attacks) olasılığını düşürmekte faydalı olur.

9 Şubat 2015'te, Google HTTP/2'ye destek amacıyla Chrome 40 ile başlayarak 2016'dan önce Chome bünyesinde SPDY desteğini kaldırmayı planladığını belirtti.[20]

Şifreleme

HTTP/2, HTTP URI'leri (başka bir deyişle şifrelemesiz) ve HTTPS URI'lerinin (TLS üzerinde, TLS 1.2 veya daha yenisi gerektiği yerlerde) ikisi için de tanımlanmıştır.[21]

Standart kendi başına şifreleme kullanımı gerektirmemesine rağmen,[22] çoğu istemci uygulamaları (Firefox,[23] Chrome, Safari, Opera, IE, Edge) fiilen şifrelemeyi zorunlu hale getiren sadece TLS üzerindeki HTTP/2 desteğini sağlayacaklarını belirttiler.[24]

Eleştiriler

HTTP/2'nin gelişim süreci ve protokolün kendisi eleştiri ile karşılaşmıştır.

FreeBSD ve Varnish (bir çeşit HTTP hızlandırıcı) geliştiricisi Poul-Henning Kamp standartın gerçekçi olmayan bir zaman diliminde hazırlandığını, yeni HTTP/2 için SPDY protokolü haricinde herhangi bir temelin göz ardı edildiğini ve geliştirmeler için diğer olanakların kaçırıldığını iddia etti.[25] Kamp protokolün kendisinin tutarsız, lüzumsuz ve bunaltıcı şekilde karmaşık olmasını eleştirdi.[25] O ayrıca protokolün, protokol katmanlandırma prensiplerini örneğin iletim katmanı (TCP) ile akım kontrolünü kopyalayarak ihlal ettiğini belirtti.[25] Bununla birlikte kaygıların çoğu, şifreleme sorunları ile ilgiliydi.

Şifreleme

İlk olarak çalışma grubunun bazı üyeleri protokole bir şifrelemenin gerekliliği konusunda baskı oluşturmaya çalıştı. Bu eleştiri ile karşılaştı.

Eleştirmenler şifrelemenin göz ardı edilemez hesaplama maliyetleri olduğunu (mevcut veri tersini gösterse bile[26]), birçok HTTP uygulamasının gerçekte şifrelemeye ihtiyacı olmadığını ve  onların sağlayıcılarının şifreleme için ayrı bir kaynak harcamaya dair isteklerinin olmadığını belirttiler.Varnish hızlandırıcısının öncü geliştiricisi ve kıdemli FreeBSD çekirdek geliştiricisi Poul-Henning Kamp, IETF'yi HTTP/2 hakkında özel bir politik gündem izlediği için eleştirdi.[25][27][28] Mevcut sertifika sistemi içinde zorunlu şifreleme gündemi eleştirileri ne yeni değil, ne de açık kaynak topluluğu için tek örnek değil – bir Cisco çalışanı 2013 yılı içinde mevcut sertifika modelinin yönlendirici gibi küçük aygıtlar için uyumlu olmadığını, çünkü mevcut modelin sadece yıllık başvuru ve her bir sertifika için önemsiz olmayan katkı payı indirimini gerektirmediğini, ama sürekli olarak bir yıllık temel düzeyde tekrar etmesi gerektiğini belirtti.[29] Şifrelemeyi fiili bir gereklilik haline getiren çoğu istemci uygulamasının onu talep etmesine rağmen, çalışma grubu son durumda zorunlu şifreleme üzerinde bir fikir birliğine ulaşamadı[22] .

HTTP/2 protokolü ayrıca SMTP gibi diğer internet protokollerinde uzun süre elverişli olmuş STARTTLS mekanizmasına benzer pasif izleme karşısında bir önlem olan opportunistic encryption (oportünist şifreleme) desteği sunmaması nedeniyle eleştiri ile karşılaştı. Eleştirmenler HTTP/2 önerisinin IETF'in kendinin ve En İyi Mevcut Uygulama(Best Current Practise, mühendislik ve bilgi teknolojilerinde filli bir performans seviyesi) 188 statüsüne sahip olan [rfc:7258 RFC7258 "Pervasive Monitoring Is an Attack"](Saldırıcı olan nüfuz eden izleme) standardına ihlal yaptığını belirtti.[30] RFC7258/BCP188 pasif izlemenin bir saldırı olarak izlenmesini ve IETF tarafından tasarlanan protokollerin pasif izleme karşısında korunma için girişimde bulunmasını (örneğin, oportünist şifrelemenin kullanılması yolu ile) şart koşar. Çalışma grubunun resmi bir çalışma kalemi draft-ietf-httpbis-http2-encryption-01 olan oportünist şifreleme için birtakım şartname onaylandı.[31][32][33]

Gelişim Aşamaları

Durum Tarih Aşama[3]
Yapıldı 20 Aralık 2007[34][35]İlk HTTP 1.1 Revizyon İnternet Taslağı
Yapıldı 23 Ocak 2008[36]İlk HTTP Güvenlik Özellikleri İnternet Taslağı
Yapıldı 2012 Öncesi [37]HTTP 2.0 Öneri Çağrısı
Yapıldı 14 Ekim - 25 Kasım 2012[38][39]HTTP 1.1 Revisyonu için son Çalışma Grubu çağrısı
Yapıldı 28 Kasım 2012[40][41]HTTP 2.0'ın draft-mbelshe-httpbis-spdy-00'a dayalı ilk Ç.G. taslağı
Beklemede/

Elenmiş

---- HTTP Güvenlik Özellikleri için Çalışma Grubu Son Çağrısı
Yapıldı Eylül 2013[42][43]IESG'ye HTTP1.1 Revizyonu'un Standart Önerisi olarak kayıtı
Yapıldı 12 Şubat 2014[44]IESG approved HTTP 1.1 Revizyonunu Standart Önerisi olarak yayınlanmasını onayı
Yapıldı 6 Haziran 2014[34][45]HTTP 1.1 Revizyonun yayını, şunlar olarak: RFC [rfc:7230 7230], [rfc:7231 7231], [rfc:7232 7232], [rfc:7233 7233], [rfc:7234 7234], [rfc:7235 7235]
Yapıldı 1 Ağustos 2014 - 1 Eylül 2014[5][46]HTTP/2 için Çalışma Grubu Son Çağrısı
Yapıldı 16 Aralık 2014[4]HTTP/2'nin IESG'ye Standart Önerisi olarak kayıtı
Yapıldı 31 Aralık 2014 – 14 Ocak 2015[47]IETF 'nin HTTP/2 için Son Çağrısı
Yapıldı 22 Ocak 2015[48]HTTP/2'nin Standart Önerisi olarak incelenmesi için IESG telekonferansı
Yapıldı 17 Şubat 2015[6]IESG'nin HTTP/2'yi Standart Önerisi olarak yayınlaması
Yapıldı 14 Mayıs 2015[49]HTTP/2'nin RFC 7540 olarak yayınlanması

HTTP/HTTPS sunucular

  • Akamai Edge Servers HTTP/2'yi destekler. http2.akamai.com 7 Aralık 2020 tarihinde Wayback Machine sitesinde arşivlendi. Akamai'nin HTTP/2 uygulamasını vitrine sunar.
  • Apache 2.4.12 mod_h2 modülü vasıtası ile HTTP/2'yi destekler,[50] sunucunun o modülü desteklemesi için uygun paketlerin sunucunun kaynak kodlarına uygulanması gerekliliğine rağmen. Apache 2.4.17'nin tüm paketleri Apache kaynak ağacında yer alır, modülün kendi mod_http2 olarak yeniden adlandırılmasına rağmen.[51] SPDY'nin eski sürümleri mod_spdy vasıtasıyla desteklenirdi,[52] bununla birlikte modülün gelişimi durdu.[53]
  • Apache Traffic Server HTTP/2'yi destekler.[54]
  • CDN77 - Content Delivery Network (İçerik İletim Ağı) NGINX kullanan HTTP/2'yi destekler (20 Ağustos 2015). http2demo.io 22 Aralık 2015 tarihinde Wayback Machine sitesinde arşivlendi. CDN77'nin HTTP/2 uygulamasının bir gösterimidir.
  • Citrix NetScaler 11.x HTTP/2'yi destekler.[55]
  • Sucuri HTTP/2'yi destekler.[56]
  • CloudFlare HTTP/2'yi destekler.[57]
  • F5 BIG-IP Local Traffic Manager 11.6 (Yerel Trafik Yöneticisi)HTTP/2'yi destekler.[58]
  • h2o her yönüyle HTTP/2 desteği için oluşturulmuştur.[59]
  • Imperva Incapsula CDN HTTP/2'yi destekler.[60] http2.incapsula.com Incapsula'nın HTTP/2 uygulama gösterimidir. Uygulama WAF ve DDoS hafifletme özelliklerini için  de destek içerir.
  • Jetty 9.3 HTTP/2'yi destekler.[61]
  • KeyCDN NGINX kullanan HTTP/2'yi destekler (6 Ekim 2015). HTTP/2 Test 8 Aralık 2015 tarihinde Wayback Machine sitesinde arşivlendi. eğer sunucunuzun HTTP/2 desteğini teyit için test sayfasıdır.
  • LiteSpeed Web Server 5.0 HTTP/2'yi destekler.[62]
  • Microsoft IIS HTTP/2'yi destekler, Windows 10[63] ve Windows Server 2016 bünyesinde.
  • nginx 1.9.5 HTTP/2'yi destekler.[64]
  • OpenLiteSpeed 1.3.11 ve 1.4.8 HTTP/2'yi destekler.[65]
  • Proxygen 9 Şubat 2016 tarihinde Wayback Machine sitesinde arşivlendi. HTTP/2'yi destekler.
  • Radware Alteon NG TTP/2'yi destekler.[66]
  • Warp (Haskell web sunucu, Yesod'da varsayılan olarak kullanım) HTTP/2'yi destekler.
  • WildFly 9 HTTP/2'yi destekler.
Planlanmamış
  • lighttpd planlanmış 1.x. sürümlerinde SPDY veya HTTP/2 için desteğe sahip değildir..[67]
Uygulamalar

Şunlara da bakabilirsiniz

Kaynakça

  1. ^ Bright, Peter (Feb 18, 2015).
  2. ^ Thomson, M. (ed.
  3. ^ a b c "Hypertext Transfer Protocol Bis (httpbis) - Charter" 2 Temmuz 2013 tarihinde Wayback Machine sitesinde arşivlendi..
  4. ^ a b "History for draft-ietf-httpbis-http2-16" 22 Aralık 2015 tarihinde Wayback Machine sitesinde arşivlendi..
  5. ^ a b Raymor, Brian (August 7, 2014).
  6. ^ a b The IESG (February 17, 2015).
  7. ^ Mark Nottingham (February 18, 2015).
  8. ^ "RFC 7540 - Hypertext Transfer Protocol Version 2 (HTTP/2)".
  9. ^ "Can the rise of SPDY threaten HTTP?" 6 Ocak 2014 tarihinde Wayback Machine sitesinde arşivlendi.. blog.restlet.com.
  10. ^ "Usage of HTTP/2 for websites" 1 Mart 2021 tarihinde Wayback Machine sitesinde arşivlendi..
  11. ^ a b Ilya Grigorik.
  12. ^ Pratt, Michael.
  13. ^ Dio Synodinos (November 2012).
  14. ^ a b Sebastian Anthony (March 28, 2012).
  15. ^ a b Grigorik, Ilya.
  16. ^ Willy Tarreau; Amos Jeffries; Adrien de Croy; Poul-Henning Kamp (March 29, 2012).
  17. ^ Doug Beaver (July 15, 2012).
  18. ^ Dio Synodinos (2012-11-30).
  19. ^ "SPDY: An experimental protocol for a faster web" 30 Haziran 2017 tarihinde Wayback Machine sitesinde arşivlendi..
  20. ^ Chris Bentzel; Bence Béky (2015-02-09).
  21. ^ Belshe, M.; Peon, R.; Thomson, M. "Hypertext Transfer Protocol Version 2, Use of TLS Features" 15 Temmuz 2013 tarihinde Wayback Machine sitesinde arşivlendi..
  22. ^ a b "HTTP/2 Frequently Asked Questions" 27 Eylül 2014 tarihinde Wayback Machine sitesinde arşivlendi..
  23. ^ "Networking/http2".
  24. ^ "mnot’s blog: HTTP/2 Implementation Status" 2 Temmuz 2017 tarihinde Wayback Machine sitesinde arşivlendi.. 
  25. ^ a b c d Kamp, Poul-Henning (2015-01-06).
  26. ^ "Arşivlenmiş kopya". 2 Temmuz 2017 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Aralık 2015. 
  27. ^ Kamp, P. H. (2015).
  28. ^ Kamp, Poul-Henning (2015-01-07).
  29. ^ Lear, Eliot (2013-08-25).
  30. ^ Murenin, Constantine A. (2015-01-09).
  31. ^ Paul Hoffman. "draft-hoffman-httpbis-minimal-unauth-enc-01 - Minimal Unauthenticated Encryption (MUE) for HTTP-2".
  32. ^ Mark Nottingham; Martin Thomson. "draft-nottingham-http2-encryption-03 - Opportunistic Encryption for HTTP URIs".
  33. ^ Mark Nottingham; Martin Thomson. "draft-ietf-httpbis-http2-encryption-01 - Opportunistic Security for HTTP" 4 Temmuz 2017 tarihinde Wayback Machine sitesinde arşivlendi..
  34. ^ a b Nottingham, Mark (June 7, 2014).
  35. ^ "HTTP/1.1, part 1: URIs, Connections, and Message Parsing - draft-ietf-httpbis-p1-messaging-00".
  36. ^ "Security Requirements for HTTP - draft-ietf-httpbis-security-properties-00.txt".
  37. ^ Nottingham, Mark (January 24, 2012).
  38. ^ Nottingham, Mark (October 14, 2012).
  39. ^ Nottingham, Mark (October 23, 2012).
  40. ^ "SPDY Protocol - draft-ietf-httpbis-http2-00".
  41. ^ Nottingham, Mark (November 30, 2012).
  42. ^ "Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing" 13 Ağustos 2014 tarihinde Wayback Machine sitesinde arşivlendi..
  43. ^ "Last Call: <draft-ietf-httpbis-p1-messaging-24.txt> (Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing) to Proposed Standard" 27 Aralık 2015 tarihinde Wayback Machine sitesinde arşivlendi..
  44. ^ The IESG (February 12, 2014).
  45. ^ The RFC Editor Team (June 6, 2014).
  46. ^ Nottingham, Mark (August 1, 2014).
  47. ^ "Last Call: <draft-ietf-httpbis-http2-16.txt> (Hypertext Transfer Protocol version 2) to Proposed Standard from The IESG on 2014-12-31" 27 Aralık 2015 tarihinde Wayback Machine sitesinde arşivlendi..
  48. ^ "IESG Agenda: 2015-01-22".
  49. ^ The RFC Editor Team (May 14, 2015).
  50. ^ "http/2 module for apache httpd" 4 Mart 2016 tarihinde Wayback Machine sitesinde arşivlendi..
  51. ^ "Apache 2.4.17 release changelog" 28 Aralık 2015 tarihinde Wayback Machine sitesinde arşivlendi.. 
  52. ^ Matthew Steele (June 19, 2014). "mod_spdy is now an Apache project" 4 Mart 2016 tarihinde Wayback Machine sitesinde arşivlendi..
  53. ^ "Log of /httpd/mod_spdy" 15 Aralık 2018 tarihinde Wayback Machine sitesinde arşivlendi.. svn.apache.org.
  54. ^ "Apache Traffic Server Downloads" 25 Aralık 2015 tarihinde Wayback Machine sitesinde arşivlendi.. trafficserver.apache.org. 2015-09-21. 
  55. ^ "3 Simple Steps to Bring HTTP/2 Performance to Legacy Web Applications" 25 Eylül 2015 tarihinde Wayback Machine sitesinde arşivlendi..
  56. ^ "Sucuri += HTTP/2 — Announcing HTTP/2 Support" 8 Aralık 2015 tarihinde Wayback Machine sitesinde arşivlendi..
  57. ^ "HTTP/2 is here! 8 Aralık 2015 tarihinde Wayback Machine sitesinde arşivlendi.
  58. ^ Robert Haynes.
  59. ^ "H2O" 21 Ocak 2016 tarihinde Wayback Machine sitesinde arşivlendi.. 
  60. ^ "HTTP/2 is here: What You Need to Know" 8 Aralık 2015 tarihinde Wayback Machine sitesinde arşivlendi..
  61. ^ "Jetty change log" 22 Aralık 2015 tarihinde Wayback Machine sitesinde arşivlendi..
  62. ^ "LSWS 5.0 Is Out – Support for HTTP/2, ESI, LiteMage Cache" 10 Mayıs 2015 tarihinde Wayback Machine sitesinde arşivlendi..
  63. ^ Rob Trace; David Walp (October 8, 2014).
  64. ^ "nginx changelog" 5 Mayıs 2016 tarihinde Wayback Machine sitesinde arşivlendi.. www.nginx.com. 2015-09-22. 
  65. ^ "OpenLiteSpeed 1.4.5 change log" 10 Ocak 2016 tarihinde Wayback Machine sitesinde arşivlendi..
  66. ^ "Radware Combines an Integrated HTTP/2 Gateway with its Leading Fastview Technology to Provide Web Server Platforms Increased Acceleration" 3 Ekim 2015 tarihinde Wayback Machine sitesinde arşivlendi..
  67. ^ stbuehler. "lighttpd Feature #2322 - Support for SPDY protocol" 4 Ekim 2015 tarihinde Wayback Machine sitesinde arşivlendi..

Dış bağlantılar

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">HTTP</span> iletişim protokolü

HTTP bir kaynaktan dağıtılan ve ortak kullanıma açık olan hiperortam bilgi sistemleri için uygulama seviyesinde bir iletişim protokolüdür. HTTP, World Wide Web için veri iletişiminin temelidir; burada köprü metni belgeleri, örneğin bir fare tıklamasıyla veya bir web tarayıcısında ekrana dokunarak kullanıcının kolayca erişebileceği diğer kaynaklara köprüler içerir.

<span class="mw-page-title-main">Dosya aktarım iletişim kuralı</span> Bilgisayarcılık terimi

Dosya aktarım iletişim kuralı,, bir veri yığınının - ASCII, EBCDIC ve binary- bir uç aygıttan diğerine iletimi için kullanılmaktadır.

Telnet, Internet ağı üzerindeki çok kullanıcılı bir makineye uzaktaki başka bir makineden bağlanmak için geliştirilen bir TCP/IP protokolü ve bu işi yapan programlara verilen genel isimdir. Telnet iki bileşenden oluşur: (1) iki tarafın nasıl iletişim kuracağını belirleyen protokolün kendisi ve (2) hizmeti sağlayan yazılım uygulaması.Kullanıcı verileri, İletim Kontrol Protokolü (TCP) üzerinden 8 bitlik bayt yönlendirmeli bir veri bağlantısında Telnet kontrol bilgisi ile bant içi serpiştirilir. Telnet, 1969'da RFC 15 ile başlayarak geliştirildi, RFC 855'te genişletildi ve ilk İnternet standartlarından biri olan İnternet Mühendisliği Görev Gücü (IETF) İnternet Standardı STD 8 olarak standartlaştırıldı. encryption sağlayan bazı Telnet eklentileri geliştirilmiştir. Bağlanılan makineye girebilmek (login) için orada bir kullanıcı isminizin (İng:username) ve bağlantının gerçekleşebilmesi için bir telnet erişim programınızın olması gereklidir. Fakat bazı kütüphane ve herkese açık telnet bazlı web servisleri, bağlantı sırasında kullanıcı ismi (numarası) istemeyebilirler; ya da, kullanıcı isim ve parola olarak ne yazmanız gerektiği bağlandığınızda otomatik olarak karşınıza çıkar. Telnet, BBS sistemlere İnternet üzerinden erişimde günümüzde yaygın olarak kullanılmaktadır. Telnet erişim programları, günümüzdeki işletim sistemlerinin çoğunda işletim sistemi ile birlikte gelmektedir. Çok kullanıcılı işletim sistemleri genellikle kullanıcılara metin tabanlı bir arayüz sunar ve bu sistemlerde tüm işlemler klavye vasıtası ile komut isteminden gerçekleştirilir.

HTTPS bir bilgisayar ağı üzerinden güvenli iletişim için internet üzerinde yaygın olarak kullanılan bir HTTP uzantısıdır. HTTPS'te, iletişim protokolü Taşıma Katmanı Güvenliği (TLS) veya öncesinde, onun öncülü/selefi olan Güvenli Soket Katmanı (SSL) ile şifrelenir. Bu nedenle protokol sık sık TLS üzerinden HTTP veya SSL üzerinden HTTP olarak da adlandırılır.

Adres Çözümleme Protokolü ağ katmanı adreslerinin veri bağlantısı katmanı adreslerine çözümlenmesini sağlayan bir telekomünikasyon protokolüdür. 1982 yılında RFC 826 aracılığıyla tanımlanmıştır. STD 37 kodlu bir internet standardıdır.

<span class="mw-page-title-main">Transport Layer Security</span> Internet Şifreleme Protokolü

Taşıma Katmanı Güvenliği (TLS) ve onun öncülü/selefi olan Güvenli Soket Katmanı (SSL), bilgisayar ağı üzerinden güvenli haberleşmeyi sağlamak için tasarlanmış kriptolama protokolleridir. X.509 sertifikalarını kullanırlar ve bundan dolayı karşı tarafla iletişime geçeceklerin kimlik doğrulaması asimetrik şifreleme ile yapılır ve bir simetrik anahtar üzerinde anlaşılır. Bu oturum anahtarı daha sonra taraflar arasındaki veri akışını şifrelemek için kullanılır. Bu, mesaj/veri gizliliğine ve mesaj kimlik doğrulama kodları için mesaj bütünlüğüne izin verir. Protokollerin birçok versiyonu ağ tarama, elektronik mail, İnternet üzerinden faks, anlık mesajlaşma ve İnternet üzerinden sesli iletişim gibi uygulamalarda yaygın olarak kullanılmaktadır. Bu durumda/içerikte/bağlamda en önemli özellik iletme gizliliğidir. Bundan dolayı kısa süreli oturum anahtarı, uzun süreli gizli simetrik anahtardan türetilememelidir.

<span class="mw-page-title-main">Kerberos (iletişim kuralı)</span>

Kerberos / kərbərəs / güvenli olmayan bir ağ üzerinde haberleşen kaynakların, bilet mantığını kullanarak kendi kimliklerini ispatlamak suretiyle iletişim kurmalarını sağlayan bir bilgisayar ağı kimlik doğrulama protokolüdür. Protokolün tasarımcıları, ilk başta istemci-sunucu modelini hedef almış ve bu doğrultuda hem kullanıcının hem de sunucunun birbirlerinin kimliklerini doğrulamasını sağlayan karşılıklı kimlik doğrulama özelliğini sunmuşlardır. Kerberos protokol mesajları, izinsiz dinlemelere ve yansıtma ataklarına karşı dayanıklıdır.

İnternet Protokolü Güvenliği (IPsec), Internet Protokolü (IP) kullanılarak sağlanan iletişimlerde her paket için doğrulama ve şifreleme kullanarak koruma sağlayan bir protokol paketidir. IPsec, içinde bulundurduğu protokoller sayesinde, oturum başlarken karşılıklı doğrulama ve oturum sırasında anahtar değişimlerini gerçekleştirme yetkisine sahiptir. İki bilgisayar arasında (host-to-host), iki güvenlik kapısı arasında(network-to-network), bir güvenlik kapısı ve bir bilgisayar arasında(network-to-host) sağlanan bağlantıdaki veri akışını korumak için kullanılır. IPsec kriptografik güvenlik servislerini kullanarak IP protokolü ile gerçekleştirilen bağlantıları korumak için kullanılır. Ağ seviyesinde doğrulama veri kaynağı doğrulama,veri bütünlüğü, şifreleme ve replay saldırılarına karşı koruma görevlerini üstlenir.

Real Time Streaming Protocol (RTSP), eğlence ve iletişim sistemlerinde medya sunucularındaki verilerin akışını kontrol etmek için tasarlanan bir ağ denetim protokolüdür. Bu protokol bitiş noktaları arasındaki medya bağlantılarının kurulması ve kontrol edilmesinde kullanılır. Medya sunucularının sorunu VCR'lerdeki gibi müşterilerin sunucudan alınan medya dosyalarını çalışma, durdurma gibi kısacası gerçek zamanlı kontrolü kolaylaştırmak.

Dünya Çapında Ağ bağlamında Apache JServ Protokolü, ikicil bir protokol olup Web sunucusundan gelen geri bağlantılı talepleri bir alıp arkasında bulunan uygulama sunucusua iletebilir. Ayrıca bazı denetlemeleri de yaparak Web sunucusunun uygulama sunucusunu pinglemesine de sağlamaktadır. Web uyarlamacıları tipik olarak AJP'yi bir yük dengleme konuşlandırmasında bir veya birkaç ön uç Web sunucusundan bir veya birkaç uygulama sunucusuna talepleri iletmek için kullanmaktadırlar. Oturumlar asıl uygulama sunucularına her uygulama sunucusu oluşumuna bir ad verildiği özel bir yönlendirme mekanizmasıyla yönlendirilirler. Bu bağlantıların her birine dolaştır denir.

İnternet anahtar değişim protokolü ya da Internet Key Exchange internet üzerinde güvenli bir şekilde veri alışverişi için kullanılan anahtarların değişimini sağlayan protokoldür.

İnternet Akış Protokolü(ST ve daha sonraları ST-||) ilk olarak İnternet Mühendisliği Notu IEN-119 (1979) ve daha sonra RFC 1190(ST-II) da ve RFC 1819(ST2+) da önemli ölçüde revizyona tabi tutulan deneysel protokoller ailesidir. ST bir http://en.wikipedia.org/wiki/Network_Voice_Protocol Ağ Ses Protokolü]nün multimedya taşıma protokolü olarak ortaya çıktı ve insan konuşmalarını paketlenmiş bir iletişim ağı üzerinden taşımak için öncü bir bilgisayar ağ protokolü olarak 1973'te internet araştırmacısı Information Science Institute (ISI) den Danny Cohen tarafından, ARPANET'in Güvenli İletişim Ağı projesinin bir parçası olarak uygulandı.(bkz.RFC 741(1977de yayımlandı))

Tünel protokolü, bir ağ protokolü farklı bir yük-taşıma protokolü içerdiğinde bilgisayar ağ bağlantısı, bir tünel protokolü kullanır. Tünel protokolü kullanılarak, uyumsuz olan bir iletim protokolü üzerinde bir yük-taşıma taşınabilir ya da güvenilmeyen ağlarda güvenli bir yol oluşumu sağlanabilir.

ZRTP bir şifreleme anahtar paylaşma protokolüdür. Bu protokolde, Voice over Internet Protocol (VoIP) protokolüne dayanan iki uç nokta arasında şifreleme yapabilmek için anahtarlar üzerinde anlaşma yapılmaktadır. Voice over Internet Protocol (VoIP) telefon çağrısı Real Time Transport Protocol'e dayanır. Şifreleme için Diffie–Hellman anahtar değişimi ve Secure Real-time Transport Protokol (SRTP)' lerini kullanır. ZRTP, Bryce Wilcox-O'Hearn, Colin Plumb, Jon Callas ve Alan Johnston yardımıyla, Phil Zimmermann tarafından geliştirildi ve 5 Mart 2006 tarihinde Bryce Wilcox-O'Hearn'nin yardımıyla, Phil Zimmermann, Jon Callas and Alan Johnston tarafından Internet Engineering Task Force (IETF)' a sunuldu ve RFC 6189 olarak 11 Nisan 2011 tarihinde yayınladı.

Fırsatçı şifreleme, bir sistemden başka bir sisteme bağlanırken iletişim kanallarını şifrelemek için kullanılır. Bu yöntem iki sistem arasında ön düzenlemeyi gerektirir.

<span class="mw-page-title-main">OAuth</span> kimlik doğrulama protokolü

OAuth açık standartlı bir yetkilendirme protokolüdür, genellikle internet kullanıcıları tarafından kendi Google, Microsoft, Facebook, Twitter, One Network vb. hesaplarının şifrelerini açığa çıkarmadan third party web sitelerine erişmek için kullanılır. Genellikle OAuth kaynağın sahibi adına, kullanıcılara sunucu kaynakları için "güvenli temsili erişim" sağlıyor. Kaynak sahipleri için bir süreç başlatıyor. Bu süreçte kaynak sahiplerinin sunucu kaynaklarına herhangi bir kimlik paylaşımı olmadan üçüncü taraf erişim yetkisi sağlanıyor. Spesifik olarak Hypertext Transfer Protocol (HTTP) ile çalışması için tasarlanmış, OAuth temelde yetkili sunucu ile ve kaynak sahibinin onayı ile access tokenslerinin third-party kullanıcılarına verilmesine izin veriyor. Daha sonra third party, kaynak sunucudaki korumalı kaynaklara erişmek için access tokenlarını kullanıyor.

<span class="mw-page-title-main">WebSocket</span> bilgisayar iletişim protokolü

WebSocket, tek bir TCP bağlantısı üzerinden tam çift yönlü iletişim kanalı sağlayan bir bilgisayar iletişim protokolüdür. WebSocket protokolü IETF tarafından 2011 yılında RFC 6455 ile standart hale getirilmiş ve WebIDL içerisindeki WebSocket API W3C tarafından standart hale getirilmektedir.

Apache Abdera web yayınlarının ve diğer web kaynakların yaratılmasında, düzenlenmesinde ve yayımlanmasında bir standart olan Atom Dağıtım Biçimi ve Atom Yayımlama Protokolü'nün bir uygulamasıdır. Ana odak konusu Java'dır. Ancak C/C++ ve .NET uygulamaları da dikkate alınmaktadır.

Bir işlemin belirlenen süre aşıldığında istemcinin uygulama ile bağlantısının kesilmesidir. Bu çoğu zaman Web Sitesinin tam ortasında "Error 408 Request Timeout" olarak gözükebilir.

HTTP 403, istenen kaynağa erişimin yasak olduğu anlamına gelen bir HTTP durum kodudur. Bu kodun gösterilmesinin anlamı: sunucu isteği anladı, ancak yerine getirmeyecek.