Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

2:UYGULAMA KATMANI2-1 2.Bölüm: Uygulama Katmanı  2.1 Ağ uygulamalarının esasları  2.2 Web and HTTP  2.3 FTP  2.4 Elektronik Posta SMTP, POP3, IMAP.

Benzer bir sunumlar


... konulu sunumlar: "2:UYGULAMA KATMANI2-1 2.Bölüm: Uygulama Katmanı  2.1 Ağ uygulamalarının esasları  2.2 Web and HTTP  2.3 FTP  2.4 Elektronik Posta SMTP, POP3, IMAP."— Sunum transkripti:

1 2:UYGULAMA KATMANI2-1 2.Bölüm: Uygulama Katmanı  2.1 Ağ uygulamalarının esasları  2.2 Web and HTTP  2.3 FTP  2.4 Elektronik Posta SMTP, POP3, IMAP  2.5 DNS  2.6 P2P dosya paylaşımı

2 2:UYGULAMA KATMANI2-2 2.Bölüm: Uygulama Katmanı Amaç:  Ağ uygulama protokollarının kavramsal ve işletim yönleri iletim-katmanı servis modelleri İstemci-sunucu Eşten-eşe (P2P)  Yaygın kullanılan protokoller HTTP FTP SMTP / POP3 / IMAP DNS

3 2:UYGULAMA KATMANI2-3 Bazı ağ uygulamaları  E-posta  Web  Chat  Uzaktan erişim  P2P dosya paylaşımı  Çok kullanıcılı ağ oyunları  Depolanmış video parçası akışı  Internet telefonu  Gerçek zaman video konferansı

4 2:UYGULAMA KATMANI2-4 Ağ uygulaması oluşturmak Programlar Farklı uç sistemlerde çalışır Ağ üzerinden haberleşir e.g., Web: Web sunucusu yazılımı internet gezgini vasıtasıyla ile haberleşir Yazılımlar ağ merkezindeki cihazlar düşünülerek yazılmazlar Ağ merkezindeki cihazlar uygulama katmanında çalışmazlar Bu tasarım uygulamaların geliştirmelerine müsait bir ortam hazırlar uygulama iletim ağ link fiziksel uygulama iletim ağ link fiziksel uygulama iletim ağ link fiziksel

5 2:UYGULAMA KATMANI2-5 Uygulama Mimarileri  İstemci-sunucu  P2P  Hibrit istemci-sunucu ve P2P

6 2:UYGULAMA KATMANI2-6 İstemci sunucu mimarisi sunucu: Her zaman açık olan host kalıcı IP adresi istemci: sunucuyla haberleşir arada bir bağlantı sağlayabilir değişken IP adresleri olabilir Birbirleriyle direkt olarak haberleşmezler

7 2:UYGULAMA KATMANI2-7 Saf P2P mimarisi  Her zaman açık olan bir sunucu yok  herhangi iki eş direkt olarak haberleşebilir  eşler geçici olarak bağlanabilir ve IP adresi değiştirebilir  örnek: Gnutella Ölçeklenebilirliği yüksek Fakat idaresi zor

8 2:UYGULAMA KATMANI2-8 Hibrit istemci-sunucu ve P2P Napster Dosya transferi  P2P Dosya araması  merkezi: Eşler merkezi sunucuda içeriklerini kaydederler Eşler aynı merkezi sunucuda aradıkları içeriği bulmak için sorgulama yaparlar Chat İki kullanıcı arasındaki chat  P2P Çevrimiçi olup olmadığının algılaması  merkezi: Kullanıcılar çevrimiçi olduklarında IP adreslerini merkezi sunucuya kaydederler Kullanıcı arkadaşlarının IP adreslerini bulmak için merkezi sunucuya başvurur

9 2:UYGULAMA KATMANI2-9 İşlemler haberleşiyor İşlem: hostta çalışan program.  aynı hostta iki işlem birbiriyle işletim sistemiyle belirlenen şekilde haberleşir.  Farklı hostlardaki işlemler mesaj alış- verişiyle haberleşir. İstemci işlemi: haberleşmeyi başlatan işlem Sunucu işlemi: haberleşmek üzere bağlantı kurulmasını bekleyen işlem  Note: P2P mimarisine sahip uygulamalar istemci ve sunucu işlemlerinin her ikisine de sahipler

10 2:UYGULAMA KATMANI2-10 Soketler  İşlemler soketleri aracılığıyla mesaj alış- verişi yaparlar  soket kapı ile aynı mantıkla çalışır Gönderici işlem mesaja çıkış kapısını gösterir Gönderici işlem, alıcı işlemlere de mesajları getiren kapının diğer tarafındaki iletim yapısına güvenir işlem TCP bufferlar soket host veya sunucu işlem TCP bufferlar soket host veya sunucu Internet OS kontrolünde Uygulama geliştiricisinin kontrolünde  API(Application Programming Interface): (1) iletim protokolünün seçimi; (2) birkaç parametreyi değiştirme yetkisi

11 2:UYGULAMA KATMANI2-11 Addresleme işlemleri  Bir işlemin mesajları alabilmesi için kimliği olmalı  Bir host 32-bit IP adresine sahip  S: sadece işlemin çalıştığı hostun IP adresi işlemi tanımlamaya yeterli mi?  Cevap: Hayır, birçok işlem aynı hostta aynı anda çalışıyor olabilir  Tanımlayıcı IP numarasını ve port numarasını içermelidir.  Örnek port numaraları: HTTP sunucu: 80 Mail sunucu: 25

12 2:UYGULAMA KATMANI2-12 Uygulama katmanı protokolü şunları tanımlar:  Mesaj tiplerini, e.g., istek, cevap  Message yazılım formatını: Mesajlarda hangi alanların olduğunu  İşlemlerin ne zaman ve nasıl mesaj gönderdiklerinin ve cevapladıklarının kurallarını protokoller:  RFClerle tanımlanmıştır  Birbirleri ile çalışabilirler  e.g., HTTP, SMTP

13 2:UYGULAMA KATMANI2-13 Bir iletim servis uygulaması neye ihtiyaç duyar? Veri kaybı  Bazı uygulamalar bir miktar veri kaybına tolere edebilir (e.g., ses)  Diğer uygulamalar (e.g., dosya transferi, telnet) 100% güvenilir veri transferi ister Zamanlama  Bazı uygulamalar (e.g., Internet telefonu, interaktif oyunlar) gecikmenin az olmasını ister Bant genişliği  Bazı uygulamaların (e.g., multimedia) çalışabileceği minimum bant genişliği vardır  Diğer uygulamalar ne kadar bant genişliği alırlarsa onla idare ederler

14 2:UYGULAMA KATMANI2-14 Bazı uygulamalar için Transport servis gereksinimleri Uygulama Dosya transferi e-posta Web belgeleri Gerçek-zaman ses/görüntü Depolanmış ses/görüntü interaktif oyunlar chat Veri kaybı Kayıpsız Kayıplı Kayıpsız Bant genişliği elastik ses: 5kbps-1Mbps video:10kbps-5Mbps aynı birkaç kbps elastik hayır evet, 100’s msn evet, birkaç sn evet, 100’s msec evet ve hayır Zaman hassasiyeti

15 2:UYGULAMA KATMANI2-15 Internet uygulamaları: uygulama, iletim protokolleri Uygulama e-posta Uzaktan erişim Web Dosya transferi akan multimedia Internet telefonu Uygulama katmanı protokolü SMTP [RFC 2821] Telnet [RFC 854] HTTP [RFC 2616] FTP [RFC 959] özel (e.g. RealNetworks) özel (e.g., Dialpad) Altındaki iletim protokolü TCP TCP veya UDP Tipik olarak UDP

16 2:UYGULAMA KATMANI2-16 Web ve HTTP Web sayfası nesneler içerir  Nesne HTML dosyası, JPEG resim, Java applet, ses dosyası,… olabilir  Web sayfası birçok nesneye referansı olan temel bir HTML (Hyper Text Markup Language ) -dosyası içerir  Bütün nesneler bir URL (Uniform Resource Locator) ile adreslenebilir  Örnek URL: host name path name

17 2:UYGULAMA KATMANI2-17 HTTP HTTP: hypertext transfer protocol  Web’in uygulama katmanı protokolü  istemci/sunucu modeli istemci: Web nesnelerini isteyen ve gösteren gezgin sunucu: isteklere cevap veren ve nesneleri gönderen web sunucusu  HTTP 1.0: RFC 1945RFC  HTTP 1.1: RFC 2068 PC internet Explorer çalışıyor Web sunucusu Mac Navigator çalışıyor HTTP isteği HTTP cevabı

18 2:UYGULAMA KATMANI2-18 HTTP TCP kullanır:  İstemci, sunucu ile arasında TCP bağlantısı başlatır, port 80  sunucu TCP bağlantısını kabul eder  HTTP mesajları internet gezgini ve web sunucusu arasında gider gelir  TCP bağlantısı kapatılır HTTP is “durumsuz”  Sunucu istemcinin geçmiş istekleri hakkında bilgi depolamaz Durum bilgisi tutan protokoller karmaşıktır!  Geçmiş durum takip edilmeli  Eğer sunucu/istemci çökerse durum bilgileri farklılaşabilir not

19 2:UYGULAMA KATMANI2-19 HTTP bağlantıları Kalıcı olmayan HTTP  En fazla bir nesne TCP bağlantısı ile gönderilir.  HTTP/1.0 kalıcı olmayan HTTP kullanır. Kalıcı HTTP  Tek bir TCP bağlantısı üzerinden birden fazla nesne gönderilebilir.  HTTP/1.1 kalıcı HTTP kullanır

20 2:UYGULAMA KATMANI2-20 Kalıcı olmayan HTTP Kullanıcı aşağıdaki URL’yi ygirer 1a. HTTP istemcisi HTTP sunucusuna bağlantı başlatır ( port 80) 2. HTTP istemcisi HTTP istek messajını (URL’yi içeren) TCP bağlantı soketine gönderir. Messaj istemcinin someDepartment/home.index nesnesini istediğini belirtir 1b. Port 80 den TCP bağlantısı bekleyen w ww.someSchool.edu hostu bağlantıyı kabul eder ve HTTP istemcisine bildirir 3. HTTP sunucusu istek mesajını alır, istenen nesneyi de içeren cevap mesajını oluşturarak kendi soketine gönderir. zaman (metin ve 10 Jpeg’e referans içeriyor

21 2:UYGULAMA KATMANI2-21 Kalıcı olmayan HTTP 5. HTTP istemcisi html dosyasını içeren mesajı alır ve gösterir. Bu dosyayı işlerken 10 tane referans jpeg nesnesi daha olduğunu fark eder adımları bu 10 jpeg nesnesi için tekrarlanır 4. HTTP sunucusu TCP bağlantısını kapatır. zaman

22 2:UYGULAMA KATMANI2-22 Cevaplama süresi modeli RTT (Round Trip Time) tanımı: Gönderilen küçük bir paketin sunucuya gidip gelme zamanı. Cevaplama zamanı:  TCP bağlantı isteği için 1 RTT  HTTP isteği ve HTTP cevabının ilk bitlerinin dönmesi için 1RTT  Dosya iletim süresi toplam = 2RTT+iletim süresi Dosyayı iletme süresi TCP Bağlantısı başlat RTT dosyayı iste RTT Dosya alındı zaman

23 2:UYGULAMA KATMANI2-23 Kalıcı HTTP Kalıcı olmayan HTTP sorunları:  Her nesne için 2 RTT gerekli  İşletim sistemi her nesnede TCP bağlantısını oluşturmak için meşgul olacak  Fakat internet gezginleri genelde referans nesneler için paralel TCP bağlantısı açarlar Kalıcı HTTP  Sunucu nesneyi gönderdikten sonra bağlantıyı açık tutar  sonraki HTTP mesajları aynı bağlantı üzerinden gönderilir Ardışık olmayan Kalıcı:  İstemci eğer bir önceki isteğe cevap alınmışsa yeni bir istek gönderir  Herbir referans nesne için 1 RTT Ardışık Kalıcı:  HTTP/1.1  İstemci gördüğü bütün referans nesneler için istekte bulunur  Bütün referans nesneler için 1 RTT kadar az bir süre

24 2:UYGULAMA KATMANI2-24 HTTP istek mesajı  İki tip HTTP messajı: istek, cevap  HTTP istek mesajı: ASCII (insan tarafından okunabilen biçim) GET /somedir/page.html HTTP/1.1 Host: User-agent: Mozilla/4.0 Connection: close Accept-language:fr (enter) İstek satırı (GET, POST, HEAD komutları) Başlık satırları Enter satırı, Mesajın sonun belirtir

25 2:UYGULAMA KATMANI2-25 HTTP istek mesajı: genel format

26 2:UYGULAMA KATMANI2-26 form girişi yükleme Post metodu:  Web page genelde form girişi içerir  Input sunucuya varlık gövdesi kısmında aktarılır URL metodu:  GET metodunu kullanır  Input istek satırının URL alanında aktarılır:

27 2:UYGULAMA KATMANI2-27 Method tipleri HTTP/1.0  GET  POST  HEAD Sunucudan nesneyi göndermemesini ister. Genelde hata ayıklama için kullanılır HTTP/1.1  GET, POST, HEAD  PUT Dosyayı URL path’ine varlık gövdesi kısmında aktarır  DELETE Belirtilen URL’deki dosyayı siler

28 2:UYGULAMA KATMANI2-28 HTTP cevap mesajı HTTP/ OK Connection close Date: Thu, 06 Aug :00:15 GMT Server: Apache/1.3.0 (Unix) Last-Modified: Mon, 22 Jun 1998 …... Content-Length: 6821 Content-Type: text/html data data data data data... Durum satırı (protokolprotokol durum kodudurum kodu) başlık satırları veri, e.g., istenilen HTML dosyası

29 2:UYGULAMA KATMANI2-29 HTTP cevabı durum kodları 200 OK İstek başarılı, istenen nesne bu mesajda 301 Moved Permanently İstenen nesne taşındı, yeni yeri bu mesajda 400 Bad Request İstek mesajı sunucu tarafından anlaşılamadı 404 Not Found İstenen doküman sunucuda bulunamadı 505 HTTP Version Not Supported sunucu->istemci cevap mesajı ilk satırı. Birkaç örnek kod:


"2:UYGULAMA KATMANI2-1 2.Bölüm: Uygulama Katmanı  2.1 Ağ uygulamalarının esasları  2.2 Web and HTTP  2.3 FTP  2.4 Elektronik Posta SMTP, POP3, IMAP." indir ppt

Benzer bir sunumlar


Google Reklamları