Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
1
İletişim Protokolleri
Süleyman KONDAKCI
2
Protokol Katman Kavramı
Host B Host A WWW(http) WWW(http) Uygulama (telnet/ftp/smtp) Uygulama (telnet/ftp/smtp) Transport (TCP/UDP) Transport (TCP/UDP) Internet(IP) ICMP Internet(IP) ICMP Ağ Arabirimi (Ethernet) Ağ Arabirimi (Ethernet) Süleyman KONDAKCI
3
ISO/OSI Referans Modeli
İletişim standart ve yöntemlerini belirler. Geliştirmenler için başvuru sağlar: RFC: Request For Comment RFC-791: Internet Protocol (IP) RFC-792: Internet Control Message Protocol (ICMP) RFC-793: Transmission Control Protocol (TCP) RFC-768: User Datagram Protocol (UDP) RFC-1000: The RFC Guide. RFC-959: File Transfer Protocol (FTP) Internet Protokol Katmanı İletişim için temel ünite ve kesin veri formatı hacmini tanımlar, Host ve yönlendiricilerin veri paketlerini işlemek için kuralları tanımalar, Hata denetimi ve telafileri sağlar, Evrensel boyutta Internet üzerinde paket yönlendirmeyi sağlar, Ağ için geliştirilecek yazılımlar için kural ve işlevleri sunar . OSI Referans Modeli OSI-modeli katman prenisibini içerir, Her katman spesifik bir protokol özelliğini gösterir, OSI-protokolü katmanlar arası iletişim tarzını belirler, protokol katman prensibi ağ bazlı yazılımları geliştirmeyi kolaylaştırır, En önemlisi, ağdaki iletişim işlevlerini gereken katmanlara dağıtmasıdır. Süleyman KONDAKCI
4
Ftp,rlogin,sendmail,telnet, rcp,http,gopher,wais NFS/NIS
OSI-LAYERS UNIX-LAYERS PRESENTATION Layer 7 6 5 4 3 2 1 NAME APPLICATION SESSION TRANSPORT NETWORK DATALINK PHYSICAL DESCRIPTION Ftp,rlogin,sendmail,telnet, rcp,http,gopher,wais NFS/NIS XDR RPC TCP/UDP INTERNET PROTOCOL(IP) ICMP HARDWARE CONTROLLER AND RELATED SOFTWARE CABLE, PHONE LINES, ETC. Süleyman KONDAKCI
5
Internet protokolleri
Ağ protokolü Nedir? İletişim kural ve fonksiyonlarını belirler IP, UDP, TCP, ICMP Nelerdir? Önemli ağ protokol katmanlarıdır Internet üzerinde uçtan uca veri akışını sağlarlar ISO/OSI modeline uyum sağlar De facto standard: yaygın kullanım Her tür platformda kullanılmakta Bir çok ağ yazılımları bunları kullanır Ağ Protokolleri Karşılıklı hatasız anlaşmanın en etkin yolu ortak bir kural çerçevesi dahilinde davranmaktır. Topa kafayla çıkmış bir futbolcu karşısında ayakla çıkan futbolcuya protokol dışı kaldığını belirtmeli. Kısaca ağ protokolü iletişimde: Kuralları kesin olarak belirler, Hangi kurala karşı hangi işlev uygulanacak onu belirler, Kural dışı etkinlikleri saha dışı bırakır (packet discarding) TCP ve UDP ağ işlemlerinin temelini oluşturur. TCP iki makina üzerinde koşan işlem arası telefon hattı gibi kesintisiz sürekli bağlı kalan bağlantı oluşumu ve hata giderme için gereken kural ve işlevleri sunar. IP ise iki bağlantı noktasının birbirilerini tanımasında adres ve yön saptamak için gereken kural ve işlevleri içerir. Bağlantı noktaları, iki ayrı ağda yerleşik hosts da olabilir. Bu durumda ağdan ağa IP-routing yapılır. IP connectionless unreliable packet delivery system olarakta tanımlanır. Hedefe bakmaksızın her IP-paketi değişik rotalardan ve hatta çok farklı ağlardan geçerek hedefe ulaşabilir. UDP ise TCP gibi fakat kesintili (telegram bağlantısı) açarak iki sistem üzerinde işlemlerin iletişimini sağlar. Fiziksel işlem ve kuralları ise en alt seviyede bit transferi yapan ethernet protokolü saptar. Saniyede kaç bit gidecek, packet uzunluğu gibi ölçüler ethernet protokolü (CSMA/CD) tarafından sağlanır. Bu 4 protokol her ağ için geçerlidir, kaçınılmazdır. IP ve UDP güvenilir olmayan buna karşın TCP güvenilir bağlantı sağlar. TCP connection-oriented reliable data transport protocol’ü olarakta anılır. Süleyman KONDAKCI
6
Protokol Bağımlılıkları
FTP SMTP SNMP TCP UDP ICMP EGP ARP RARP IP NETWORK ACCESS Süleyman KONDAKCI
7
Protokol Zarflama APPLICATION M M TCP/UDP S S D D IP/ICMP ETHERNET F F
M = Message S = TCP/UDP Segment D = IP Datagram F = Ethernet Frame F D S M Süleyman KONDAKCI
8
Internet Protokolü: IP
Unreliable, connectionless delivery! Ağlar arası “Güvensiz”, “bağlantısız” datagram iletişimi sağlar: Datagram temel unitesini tanımlar Internet adres biçimini tanımlar Network access katmanı ve transport katmanı arası veri taşımacılığı yapar Internet datagram yönlendirme Paket fragmantason ve re-assembly yapar. Internet Protokolü IP Internet’in temel taşını oluşturur, dolayısıyla en önemli Internet katmanı olarak bilinir. Ip katmanının işlevi şöyle sıralanabilir: Datagram ünitesini tanımlar ve bunun için tek standardı uygular. Intenet adresleme biçimini tanımlar; Her ağ bir ag ve birde aparat numarasından oluşur. Ağlar ağ numarasıyla tanınır. Ağ içindeki araçlar fiziksel katmanlarda ethernet adresleriyle tanınır. Transfer protokolü TCP ve Access katmanı arasında end-to-end veri taşımacılığını yapar. TCP verinin doğru ve eksiksiz ulaştığını sürekli kontrol ederken, IP uçlar arası veri alış verişini düzenli bir şekilde yapar. IP’nin önemli işlevlerinden bir diğeride ağlar ve uçlar arası yönlendirmeyi gerçekleştirir. Her fiziksel ağ kendi paket büyüklüğünü tanımladiği için IP o ağların paket büyüklüğünü anlar ve onlara uyum sağlamak için fragmantosyon yapar. Değişik fiziksel ağlar kedi maksimum transfer edilebilir ünitesini (MTU) kullanır. Yani veri paketini ağa uyarlamak için küçük parçalara ayırır. Alıcı tarafındada bu parçaları toparlar (re-assembly). Süleyman KONDAKCI
9
IP-Header |Version IHL Type of Service Total Length | | Identification Flags Fragment Offset | | Time to Live Protocol Header Checksum | | Source Address | | Destination Address | | Options Padding | Süleyman KONDAKCI
10
Transport Protokolü: TCP
Makinalar üzerinde değişik işlemler arası güvenlir bağlantı ve veri akışı sağlar: Paket takip ve uçtan uca veri akış kontrolü Connection-oriented full-duplex sıralı paket akışı Bütünlük (Integrity) sağlanır Aynı paket defalarca yollanmaz (duplication) Hatasız veri tesilimini garantiler Problem Solution Loss of data Receiver requests retransmission Duplication of data Receiver discards duplicate data Out of sequence data Receiver reorders data Süleyman KONDAKCI
11
TCP Özellikleri Reliable, Connection-oriented byte stream
Uçtan uca “Sanal devre” Oktet tabanlı veri aktarımı Her oktet numaralanır (Sequence number) Anlaşmalı bağlantı başlatma/kapatama Pencere akış kontrolü (Sliding Window) Süleyman KONDAKCI
12
TCP-Header | Source Port | Destination Port | | Sequence Number | | Acknowledgment Number | | Data |U|A|P R|S|F| | | Offset Reserved |R|C|S S|Y|I| Window | | |G|K|H T|N|N| | | Checksum | Urgent Pointer | | Options | Padding | | data | Süleyman KONDAKCI
13
TCP Bağlantısı Internet Server Client Open Connection: SYN=1, ACK=0 1
2 3 Open Connection: SYN=1, ACK=0 Acknowledge: SYN=1, ACK=1 Established Connection: SYN=0, ACK=1 Client Server Süleyman KONDAKCI
14
TCP Bağlantı Kapatımı Client Server Active Close Request: FIN 1
Acknowledge the Request (FIN): ACK 2 Server Close: FIN 3 Shutdown Connection (Ack to FIN): ACK 4 Süleyman KONDAKCI
15
TCP Reliability Positive Acknowledgement Sliding Window
Süleyman KONDAKCI
16
Positive Acknowledgement
Sender Receiver Send packet 1 Receive packet 1 and send ACK 1 Receive ACK 1 and send packet 2 Receive packet 2 and send ACK 2 Receive ACK 2 Süleyman KONDAKCI
17
Positive Acknowledgement
Basit implementasyon yavaş: Paket gecikme ve yeniden gönderme gönderici çıkan paketler ACK’lanmasını bekler Ağ bandını iyi kullanamama: Gecikme ve dolayısıyla timeout olursa gönderilmiş paketler tekrar yollanır Süleyman KONDAKCI
18
Sliding Window 1 2 3 4 5 6 7 8 9 10 11 12 …. Sent but not ACK’d
Sent and ACK’d Current Window 1 2 …. These octets will be sent wirhout delay These will wait until the window moves Süleyman KONDAKCI
19
Sliding window Trafik akış kabiliyetini artırır
Değişik makinalar iletişimde zorlanır Gateway ve firewall’ aygıtları hızı düşürür Karmaşık bir implementasyon Optimum ağ band genişliğ kullanımı Bir pencere genişliği (paket sayısı) üzerine anlaşılır ve o sayıda paket kesintisiz çıkarılır Alıcı uç pencere büyüklüğüne karar verir Süleyman KONDAKCI
20
Sliding Window Packet lost Sender Receiver Send packet 1 start timer
packet 1 lost no ACK sent ACK 1 would arrive at this time. Time expires Retransmit packet 1 start timer Receive packet 1 and send ACK 1 Receive ACK 1 cancel timer Süleyman KONDAKCI
21
Transport Protokolü: UDP
Makinalar üzerinde değişik işlemler arası güvensiz bağlantı ve veri akışı yapan katman Paket takip ve kontrol mekanizması yok Sırasız paket akışı: Dublikasyon mümkün Paket bütünlüğü garanti edilemez: Paket yolda kaybolabilir Uygulamanın kendisi veri akışını kontrol etmeli NFS, SMTP gibi uygulamalar tarafından kullanılır Süleyman KONDAKCI
22
UDP-Header +--------+--------+--------+--------+
| Source | Destination | | Port | Port | | | | | Length | Checksum | | | data octets ... + Süleyman KONDAKCI
23
ICMP Hatasız İletişim Olmaz
Geleneksel Kural: Çok çalışan çok hata yapar Az çalışan az hata yapar Hiç çalışmayan hiç hata yapmaz Hata yapmayan ödüllendirilir! ICMP iletişim hataları takibi ve raporlanmasında yardımcı olur Ama ağ için önemli bir tehlike odağıdır Süleyman KONDAKCI
24
ICMP Protokolü Internet Control Message Protocol; Genellikle IP’nin bir parçası gibi düşünülüyor: Hata, durum (status) ve debugging bilgisi yansıtır. Uçlar arası mesaj iletişimi sağlar Echo isteme/cevaplama (ping) Hedef bilgileri saptama; hedef bilinmiyor/erişilemiyor network, host, protocol,port, kaynak, yönlendirme hatası saptama Yönlendirici önerme/keşfetme Süleyman KONDAKCI
25
ICMP Mesaj Formatı 8-bit type 8-bit code 16-bit checksum
Type and code dependent contents Süleyman KONDAKCI
26
ICMP Protokolü Akış kontrolü (source quench)
Redirection Route to host, to network Sonsuz paket dolaşımını önleme Aktarım anında TTL sıfırlanırsa Re-assembly anında TTL sıfırlanırsa Bilgi sorgulama netmask/net sorgulama ve reply timestamp (TS) sorgulama ve reply TS=Geceyarısından bu ana ms olarak zaman TTL = Time To Live, yaşama süresi Süleyman KONDAKCI
27
ICMP Tools ping traceroute scotty satan Süleyman KONDAKCI
28
ICMP Açıklıkları Discovery Hosts Network topology (Ağ topolojisi)
Önemli bilgileri açığa çıkarma Önemli uçları açığa çıkarma Hosts unicast and broadcast Network topology (Ağ topolojisi) Denial of service (Servis dışı bırakma) Süleyman KONDAKCI
29
Port Port:Makinalar üzerinde değişik işlemler arası bağlantı ve veri akışı için kullanılan bağlantı uçları ÖRNEK: Telnet Server Telnet Server İşletim Sistemi İşletim Sistemi TCP 23 23 Telnet portu Telnet portu Süleyman KONDAKCI
30
SMTP ve TCP Portu TCP SMTP mail mailbox Sendmail Sendmail
İşletim Sistemi İşletim Sistemi 25 25 SMTP portu SMTP portu Süleyman KONDAKCI
31
Anahtarlama Sistemleri
Anahtarlama yazılım ve donanımdır Yönlendirme uygun akış yolu saptama Yönlendirme protokol dahilinde olur Switching: Anahtarlama Sistemleri Repeaters: OSI katman 1 Bridges: OSI katman 2 Routers: OSI katman 3 Gateways: OSI katman 3-7 Anahtarlama Sistemleri Anahtarlama sistemleri ağ segmentlerinin ve yerel ağların, gerek donanım gerekse yazılım tarzında, bağlantısını sağlar. Yönlendirme: Harici bir ağ için gönderilen paketlerin o ağa erişmesi için uygulanan yön verme işlemidir. Bu işleri routers (yönlendiriciler) ve gateways sistemleri gerçekleştirir. Yönlendirmede protokol çevirmenliği yapan gateways değişik ağ teknolojileri içeren ağlar arası ve Internet’te yönlendirmede önemli roller üstlenmektedirler. Her yönlendirici ağ topolojisi hakkında “görüntü” yü kafasında tutar. Bu şekle göre trafiğinde yönlendirme algoritmesini kullanır. Genel olarak üç çeşit yönlendirme vardır: 1-Statik: Yönlendirici sabit bir topoloji ve rota tablosu ile çalışır. Küçük ve az değişme/büyüme gösteren ağlar için ideal bir çözümdür. 2-Dinamik:Sürekli değişen ve büyük yerel ağlar için idealdir. Özellikle otonom ağlar diğer ISP ve yerel ağlarla bu tarzda rota alış verişinde bulunur. 3-Kombine: Yerel ağ içinde statik, dış dünyaya yönelik dinamik yönlendirme seçilir. Güvenlik açısından önemlidir. Dış dünya trafiği ile otonom ağ trafiği karışmamalı. Her UNIX sistemi bütün bu olanakları sağlar. Örneğin routed daemon’ı dinamik yönlendirme, /etc/gateways ve route programı statik yönlendirmede kullanılır. İki arabirimi olan her UNIX kutusu yönlendirici işlevi yapmak için çok fazla iş gerektirmez. Süleyman KONDAKCI
32
Yönlendiriciler Ağ topolojisi hakkında bilgi toplarlar
Paket yönlendirmeyi bu topolojiye göre yaparlar Yoğun trafikli ağlarda yönlendirme şart Üç çeşit yönlendirme yapılabilir: Statik(Sabit): Küçük ve yalıtılmış ağlar için Dinamik:Sürekli değişme gösteren dış bağlantılı ağlar için. routed bu işi yapar. Karışık (sabit+dinamik): yerel ağ içi sabit, dış dünya için dinamik yönlendirme uygun Süleyman KONDAKCI
33
Yönlendiriciler Router çoklu IP adreseleri olan bir bağlantı aygıtıdır. Gateway işlevi sağlar Ağlar arası datagram yönlendirirler OSI 3 (network layer) katmanında işler Değişik ağ teknolojilerini içeren ağları bağlayabilir; protokol değişikliği sağlar Komplike IP-routing algoritması kullanır UNIX sistemi gateway işlevi için uygun Gateways Gateways: Gateways değişik yerel ağlar arası Internet paket yönlendirmesi yapar. Yönlendiriciler değişik ağ topoloji ve değişik protokol formatlarını anlayan algoritmelerle işleyen aygıtlardır. Gateways sürekli rota olaerk tablolarını güncelleştirerek Internet’te meydan gelen olası topoloji değişikliklerini sürekli takip eder ve tablosunu güncelleştirir. Süleyman KONDAKCI
34
Default Routing Default route Yolumu kaybettim napsam acaba?
Süleyman KONDAKCI
35
Default Routing Belirsiz yön klavuzu:
Yönlendirici klavuz (rota) tablosunda bulunmayan ağlara erişmek için her ağ kesinlikle bir yönlendiricisini default router olarak kendi ağ aygıtlarına tanıtmalı Default yönlendirici her yönü kestirebilir Bilinmeyen yönlere giden datagramlar atılır Tek router varsa herkes onu defaultlamalı Süleyman KONDAKCI
36
IP-Routing Host 1 Host 2 Network A Network B Network C Application
Transport Internet Physical Host 1 Host 2 Network A Network B Network C Gateway 1 Gateway 2 Süleyman KONDAKCI
37
Yönlendirme Metriği Network Gateway Metric 128.6.4 None 0
GW-A GW-B Network 1 Network 2 Network 3 den , ve ya varmak için Network Gateway Metric None 0 GW-A 1 GW-A ve GW-B 2 Süleyman KONDAKCI
38
Segmentleyerek İşinizi Kolaylaştırın
Network 1 Network 2 Gateway Herhangi bir UNIX kutusu olabilir Host D Host C Host A Host B Süleyman KONDAKCI
39
Virtual Subnets: Aynı fiziksel ağ üzerinde segmentler yaratmak
Kampus A Kampus B Switch A Omurga Switch A Repeater C Kampus C Default Route GW Router Internet Süleyman KONDAKCI
40
Dış Dünya Detayları Görmez Subnetlerinizi Siz Tanıtın
Gateway A Gateway B Network 1 Network 2 Network 3 Süleyman KONDAKCI
41
Ping Bobardmanı ve Broadcast Adres
Repeater A Kampus A Kampus B Repeater B Backbone İki çesit broadcast adres kullanabilirsiniz: Al hosts on subnetwork All hosts on backbone Süleyman KONDAKCI
42
Ağ Kütük, Program Ve Daemon’ları
/etc/hosts: Makina ad ve IP-adreslerini içerir. /etc/ifconfig: Ağ bağlantısını çalıştırmak ve konfigürlemek için kullanılan programdır. /etc/inetd: Ana ağ daemonu, ağı dinler ve ondan istenen hizmetler için gereken programı sürer. Hizmetler /etc/inetd.conf kütüğünde belirlenmiştir. Süleyman KONDAKCI
43
/etc/inetd.conf Process socket-type protocol processing location daemon dgram stream UDP TCP wait nowait # cat /etc/inetd.conf # Internet server configuration database ftp stream tcp nowait /usr/etc/ftpd ftpd telnet stream tcp nowait /etc/telnetd telnetd login stream tcp nowait /etc/rlogind rlogind finger stream tcp nowait /usr/etc/fingerd fingerd talk dgram udp wait /etc/talkd talkd time dgram udp wait /etc/miscd timed Süleyman KONDAKCI
44
Hizmetler Kütüğü /etc/services: Ağ programlarının port numarasını ve adını içerir # cat /etc/services # Network services, Internet style echo 7/tcp netstat 11/tcp ftp 21/tcp telnet 23/tcp route 520/udp shell 514/tcp finger 79/tcp Süleyman KONDAKCI
45
Ağ protokol Kütüğü /etc/protocols: protokol ad ve numaralarını içerir
# cat /etc/protocols ip 0 IP # Internet Protocol icmp 1 ICMP # Internet Control Message Prot. ggp 3 GGP # Gateway-Gateway Protocol tcp 6 TCP # Transmission Control Protocol pup 12 PUP # PARC Universal Packet Protocol udp 17 UDP # User Datagram Protocol Süleyman KONDAKCI
46
Ağ Sınama Yazılımları Ifconfig: Ağınızı başlatır,durdurur, ayakta olup olmadığını gösterir. Ping: Ağdaki herhangi bir sisteme erişilip erişilmediğini saptar. Netstat: Ağ bağlantısı için istatistik verir: routing table IP packet iletişimi ağınız sağlıklımı? Süleyman KONDAKCI
47
Ağ Sınama Yazılımları Nslookup: DNS-name service hakkında bilgi verir. BIND hizmetlerine dahildir. Dig: nslookup gibi,daha basit, detaylı. Arp: IP ve Ethernet adresi çevirmeleri için bilgi sağlar. Çakışan IP-adreslerini saptar. Traceroute: Sisteminizden çıkan packetlerin hangi rotada seyrettiğini saptar. Ripquery: Routing Information Protocol (RIP)’u için bilgi sağlar. Süleyman KONDAKCI
48
Network Related Files/Directories
/etc/hosts Local host table /etc/services ARPA services /etc/hosts.equiv Watch out this, Security prone /etc/hosts.lpd Watch out this, Security prone /.rhosts Remote accessor, Security prone /etc/netmasks Subnetmask in dot notation /etc/networks A historical file /etc/netconfig Solaris net configuration /etc/inet/* Solaris configuration file /etc/init.d/rootuser Solaris network startup /etc/defaultdomain Default domain name /etc/defaultrouter Default router name /etc/rc.bsdnet AIX BSD-style net setup /etc/rc.local AIX network startup for BSD fans Süleyman KONDAKCI
49
Network Related Files/Directories
/etc/rc.{net,tcpip,nfs} AIX network startup files /etc/inetd.conf Allows network daemons /etc/nsswitch.conf Name service lookup order /etc/resolv.conf Name resolver IP-address /etc/protocols What protocols should be available /etc/hostname.*[0-9] Multi-homed hosts /etc/ftpusers Nontrusted ftp users access denier /etc/dfs/dfstab Solaris resource distributor /etc/dfs/fstypes Solaris filesystem distribution table /etc/dfs/sharetab Solaris Exported resource table /etc/{exports,xtab} BSD Export and Exported resources /etc/fstab BSD filesystem table /etc/sendmail.cf Sendmail config file /etc/init.d/* IRIX network startup files /etc/config/* IRIX network options /etc/chkconfig IRIX network configuration tool Süleyman KONDAKCI
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.