TOBB ETÜ BİL 552 Internet Architecture Lecture Mehmet Özdem.

Slides:



Advertisements
Benzer bir sunumlar
Bilgisayar Ağları ve İnternet
Advertisements

8. SINIF 3. ÜNİTE BİLGİ YARIŞMASI
VOTED THE BEST OF THIS YEAR
Hüseyin Gömleksizoğlu
IIS 6.0. Giriş  Geçtiğimiz yıllarda, Microsoft güvenlik açıkları nedeniyle IIS 4/5 üstünden bir çok saldırıya uğradı.  Bu sebepten Microsoft’un geliştirdiği.
BBY 302 Bilgi Teknolojisi ve Yönetimi
TCP (Transmission Control Protocol)
TCP/IP Protokolü.
TCP/IP Protokolü.
YZM Yazılım Doğrulama ve Geçerlileme
HTTP’yi (istemci tarafı) kendi kendinize deneyin
Gerekli olduğunda insanlara ulaşın Yer Uzantıları Reach prospective customers at important moment with location extensions. Location Extentions.
Google Display Network Targeting options.
1. Internet Nedir?.
İNTERNET VE BİLGİ AĞLARININ KULLANIMI
AĞ PROTOKOLÜ.
2- OSI BAŞVURU MODELİ & TCP/IP MODELİ
Saydam 1 / 104 Internet Anadolu’da Çalıştayı, Eğitim Notları Internet Anadolu’da Çalıştayı Eğitim Notları Mustafa Akgül, M. Ufuk Çağlayan Ethem Derman,
İNTERNET DÜNYAYI SARAN HAYALİ BİR AĞDIR BİLGİSAYARLAR ARASI İLETİŞİM AĞI. BİLGİYE EN HIZLI ULAŞIM.
32 bit destination IP address
Atama ve eşleme (eşleştirme) problemleri (Matching and Assignment problems)
2.Bölüm: Uygulama Katmanı
IP, DNS ve Domain Çığır İLBAŞ.
İnternet Teknolojisi Temel Kavramlar
İnternet Teknolojisi Temel Kavramlar
BTEP 203 – İnternet ProgramcIlIğI - I
İnternet Programcılığı II
Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü C ++ Nesne.
Postfix Spam Ayarları Tufan KARADERE TÜBİTAK - ULAKBİM
© 2009 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.1 Computer Networks and Internets, 5e By Douglas E. Comer Lecture PowerPoints.
3. Bölüm Taşıma Katmanı Computer Networking: A Top Down Approach 4th edition. Jim Kurose, Keith Ross Addison-Wesley, July Transport Layer.
Taşıma Katmanı Öğr. Gör. Mustafa SARIÖZ
Toplama Yapalım Hikmet Sırma 1-A sınıfı.
VOTED THE BEST OF THIS YEAR (Rivayete göre 2009 yılının en iyi e- postası seçilmiş)
Hareket halindeki insanlara ulaşın.Mobil Arama Ağı Reklamları Reach customers with Mobile Search Network.
© 2009 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.1 Computer Networks and Internets, 5e By Douglas E. Comer Lecture PowerPoints.
ÖĞR. GRV. Ş.ENGIN ŞAHİN BİLGİ VE İLETİŞİM TEKNOLOJİSİ.
İnternet Teknolojisi Temel Kavramlar
Chapter 5. Ağ Protokolleri
Kampanyanızı optimize edin. Görüntülü Reklam Kampanyası Optimize Edici'yi Kullanma Display Ads Campaign Optimizer. Let Google technology manage your diplay.
SERVING WATER TO A THIRSTY PERSON Bu Proje AB Tarafından Finanse edilmektedir. This Project is funded by European Union. Responsibility for the information.
BM-305 Mikrodenetleyiciler Güz 2015 (6. Sunu) (Yrd. Doç. Dr. Deniz Dal)
TCP/IP Protokolü. TCP/IP TCP/IP’nin tarihi ARPANET ile başlayan Internetin tarihidir. Adreslerin dağıtımı NIC (Network Information Center) tarafından.
Yard. Doç. Dr. Şirin KARADENİZ
SİBER GÜVENLİĞE GİRİŞ ISE 410 DR. TUĞRUL TAŞCI. Ders Planı HaftaKonu Başlığı 1 Siber Güvenlik Nedir? 2 Temel Ağ Kavramları 3 OSI Referans Modeli - Katmanlar.
B İ L İŞİ M S İ STEMLER İ GÜVENL İĞİ (2016) PROF. DR. ORHAN TORKUL ARŞ. GÖR. M. RAŞIT CESUR.
Ağ Temelleri Semineri erbiL KARAMAN. Gündem 1. İnternet 2. TCP / IP 3. Ağ Analizi 4. Ağ Güvenliği.
Nasa programs for students.
Practice your writing skills
TCP/IP. Network Katmanı ● Bu katmanda IP'ye göre düzenlenmiş veri paketleri bulunur. ● İletim katmanından gelen veriler burada Internet paketleri haline.
IP PAKETİ. IP Paketi ● IP protokolü akış şeklinde çalışır. ● İletim katmanı mesajları alır 64K'lık datagramlara ayırır. ● Her datagram ağ üzerinden karşı.
First Conditional Sentences. LOOK AT THE EXAMPLES If the weather is fine, we’ll play tenis If I have enough money, I’ll buy the car If it rains, we’ll.
CHILD PORNOGRAPHY IŞIK ÜNİVERSİTESİ
Öğretim Görevlisi Alper Talha Karadeniz Ağ Temelleri
İNTERNET ADRESLERİ.
Dünyanın bilgisine açılan pencere...
OSI Modeli Öğr. Gör. Ferdi DOĞAN.
BTEP 203 – İnternet ProgramcIlIğI - I
Inter-Process Communication: Processler-Arası İletişim Network Programming using Java Sockets Java Soketleri kullanarak Ağ Programlama.
PORTLAR Gizem GÜRSEL
İNTERNET VE BİLGİ AĞLARININ KULLANIMI
TCP/IP Protokolü Öğr. Gör. Ferdi DOĞAN.
Cumhuriyet Üniversitesi Bilgisayar Ağları Dersi
İletişim Protokolleri
Temel Internet Kullanımı Y. Doç. Dr. M. Sıtkı İlkay Ekim 2006.
TCP/IP PROTOKOLÜ.
OSİ Modeli.
Imagine that you are a teacher and you are taking your 20 students to England for the summer school.
PREPARED BY: 9-B STUDENTS. Sumerians, who laid the foundations of great civilizations and the world cultural heritage, emerged to the st The Sumerians.
Sunum transkripti:

TOBB ETÜ BİL 552 Internet Architecture Lecture Mehmet Özdem

Transport Layer Protokolleri Chapter 2

TCP Due to network congestion, traffic load balancing, or other unpredictable network behavior, IP packets can be lost, duplicated, or delivered out of order. TCP detects these problems, requests retransmission of lost data, rearranges out-of-order data, and even helps minimize network congestion to reduce the occurrence of the other problems. Once the TCP receiver has reassembled the sequence of octets originally transmitted, it passes them to the application program. Thus, TCP abstracts the application's communication from the underlying networking detailslostdelivered out of order

TCP TCP is utilized extensively by many of the Internet's most popular applications, including the World Wide Web (WWW), , File Transfer Protocol, Secure Shell, peer-to-peer file sharing, and some streaming media applications.World Wide Web (WWW) File Transfer ProtocolSecure Shellpeer-to-peerfile sharingstreaming media TCP is optimized for accurate delivery rather than timely delivery, and therefore, TCP sometimes incurs relatively long delays (in the order of seconds) while waiting for out-of-order messages or retransmissions of lost messages. It is not particularly suitable for real-time applications such as Voice over IP. For such applications, protocols like the Real-time Transport Protocol (RTP) running over the User Datagram Protocol (UDP) are usually recommended instead.Voice over IPReal-time Transport ProtocolUser Datagram Protocol

TCP & UDP There are a few key features that set TCP apart from User Datagram Protocol:User Datagram Protocol Ordered data transfer - the destination host rearranges according to sequence number Retransmission of lost packets - any cumulative stream not acknowledged is retransmitted Error-free data transfer Flow control - limits the rate a sender transfers data to guarantee reliable delivery. The receiver continually hints the sender on how much data can be received (controlled by the sliding window). When the receiving host's buffer fills, the next acknowledgment contains a 0 in the window size, to stop transfer and allow the data in the buffer to be processed. Congestion control

Evolution of TCP TCP & IP RFC 793 & TCP described by Vint Cerf and Bob Kahn In IEEE Trans Comm 1983 BSD Unix 4.2 supports TCP/IP 1984 Nagel’s algorithm to reduce overhead of small packets; predicts congestion collapse 1987 Karn’s algorithm to better estimate round-trip time 1986 Congestion collapse observed 1988 Van Jacobson’s algorithms congestion avoidance and congestion control (most implemented in 4.3BSD Tahoe) BSD Reno fast retransmit delayed ACK’s 1975 Three-way handshake Raymond Tomlinson In SIGCOMM 75

IGMPRSVP

TCP IGMP UDP RTP RSVP

9 Bil456 adlı host aşağıdaki URL ye ulaşmak istediğinde TCP/IP Örnek

10 HTTP Request and HTTP response Web browser,HTTP client program çalıştırır. Web server, HTTP server program çalıştırır. HTTP client HTTP servera doğru HTTP request yollar HTTP server buna HTTP response ile cevap döner

11 HTTP Request GET /index.html HTTP/1.1 Accept: image/gif, */* Accept-Language: en-us Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 Host: neon.tcpip-lab.edu Connection: Keep-Alive Check if /index.html is correct

12 HTTP Response HTTP/ OK Date: Sat, 25 May :10:32 GMT Server: Apache/ (Unix) Last-Modified: Sat, 25 May :51:33 GMT ETag: " ceff955" Accept-Ranges: bytes Content-Length: 81 Keep-Alive: timeout=15, max=100 Connection: Keep-Alive Content-Type: text/html Internet Lab Click here for the Internet Lab webpage. HTTP request Bil456’dan Tobb’a nasıl gidecek?

13 HTTP’den TCP’ye HTTP request gönderebilmek için HTTP client programı, Tobb HTTP server ile TCP bağlantısı kurar, Tobb HTTP serverında TCP server çalışmaktadır.

14 Hostname’lerin çözülme işlemi TCP; hostname ile birlikte çalışamaz bundan dolayı; “tobb.etu.edu.tr” nin IP adresi bilinmelidir. DNS kullanılmalıdır. Tobb HTTP server’ı 16 bitlik bir port numarası ile tanımlanmalıdır.

15 Port Numaraları HTTP Server port 80.porttur Bundan dolayı Bil456 client’ı sadece uzaktaki makinenin HTTP server port numarasını bilir. Well-Known Ports ftp21finger79 telnet23http80 smtp 25 nntp 119

16 TCP Connection Request bil456.etu.edu.tr’daki bulunan Bil456 HTTP client’ı IP numaralı uzak makinenin 80.portu ile TCP bağlantısı kurmaya çalışır.

17 Bil456 TCP client HTTP server ile TCP kurmak için istek yollar.

18 HTTP server gelen Ethernet frame’i alır. Ethernet Frame soyularak IP header’una bakılır,IP datagramının payload kısmında TCP segmenti bulunur bu kısım artık TCP server’a çıkarılır. Note: Since the TCP segment is a connection request (SYN), the TCP protocol does not pass data to the HTTP program for this packet. Instead, the TCP protocol at tobb will respond with a SYN segment to bil456

19 TCP Connection-oriented protokol Güvenli iletişim sağlar.

20 Connection-Oriented Data göndermeden önce TCP bağlantısı kurulur.

21 Reliable Receiver segmentler için ACK gönderir TCP timer yapısı içerisinde belirli zaman aralığında eğer ACK gelmez ise segmenti tekrar gönderir (retransmit) Hata Tespiti: Tüm byte’lar sequence ID ile gönderilir TCP checksum vardır, invalid checksum lar discar edilir.

22 TCP Format

23 TCP Header Alanları Port Number

24 TCP Header Alanları Sequence Number (SeqNo): 32 bit uzunluğundadır. 0 <= SeqNo <=  4.3 Gbyte Herbir SeqNo byte stream’deki bir byte’ı gösterir. Bağlantı kurulma aşamasında; Initial Sequence Number (ISN) ayarlanmalıdır. Each byte of data is assigned a sequence number. The first byte of data by a station in a particular TCP header will have its sequence number in this field, say If this packet has 700 bytes of data in it then the next packet sent by this station will have the sequence number of =

25 TCP Header Alanları Acknowledgement Number (AckNo): Hostlar ACK göndermek için AckNo alanını kullanırlar (If a host sends an AckNo in a segment it sets the “ACK flag”) AckNo alanı hostun bir sonraki almak istediği SeqNo yu içerir. Örnek: SeqNo= için ACK =1501

27 TCP Header Alanları Acknowledge Number Göndericiden alıcıya olan akışı kontrol edebilmek adına TCP; sliding window flow protokolunu kullanır. TCP aşağıdaki iki çeşit sliding window mekanizmasını kullanır. no NACKs (Negative ACKnowledgement) only cumulative ACKs

28 TCP Header Alanları Header Length ( 4bits): 32-bit uzunluğundadır. TCP header değişen uzunluktadır ( minimum 20 bytes)

29 TCP Header Alanları Flag bits: RST: Reset the connection SYN: Synchronize sequence numbers Bağlantı kurulma aşamasında ilk pakette gönderilir FIN: Sender is finished with sending Bağlantının kapatılması için kullanılır, tüm taraflarca gönderilmesi gereklidir.

30 TCP Header Alanları Window Size: Bağlantının tüm tarafları windows size’ını anons ederler. Window size; alıcı tarafın kabul edeceği maximum byte sayısıdır. Maximum window size = bytes

31 TCP Bağlantı Yönetimi TCP Connection Açılması TCP Connection Kapatılması Özel Seneryolar State Diagram

32 TCP Bağlantı Kurulması TCP bağlantı kurmak için three-way handshake kullanır. (1) ACTIVE OPEN: Client aşağıdakileri gönderir SYN bit set * port number of client initial sequence number (ISN) of client (2) PASSIVE OPEN: Server aşağıdaki bilgileri döner. SYN bit set * initial sequence number of server ACK for ISN of client (3) Client aşağıdaki göndererek ACK döner. ACK ISN of server (* counts as one byte)

33 Three-Way Handshake For animation

34 TCP Bağlantı Sonlandırılması Tarafların bir tanesinin FIN mesajı göndermesi artık data göndermeyeği anlamına gelir. (1) X ; Y’ye FIN gönderir(active close) (2) Y ACKs FIN, (bu sırada Y hala X’e data göndermeye devam edebilir.) (3) Y ; X’e FIN gönderir (passive close) (4) X ACKs FIN.

35 TCP Bağlantı Sonlandırılması

36 TCP States

37 TCP States in “Normal” Connection Lifetime

38 TCP State Transition Diagram Opening A Connection

39 TCP State Transition Diagram Closing A Connection