TCP. Establishing Connections (Bağlantıların Kurulması)

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "TCP. Establishing Connections (Bağlantıların Kurulması)"

Transkript

1 TCP Establishing Connections (Bağlantıların Kurulması) Bir TCP bağlantısı, iki sistem bağlantı kurma işlemini tamamladıktan sonra çalışmaya başlar. Bu işlem her iki sistem için bağlantıyı tanımlar ve veri transferi için bu bağlantıyı hazırlar. TCP, bağlantıyı three-way handshake adıyla bilinen bir prosedürle kurar. İsminin böyle olmasına rağmen aslında three-way handshake 4 ayrı adımdan oluşur. Normalde çalışması Şekil 7.6 da gösterildiği gibidir. İlk olarak herhangi bir sistemdeki bir uygulama protokolü kendi yerel TCP'sine bir bağlantı kabul etmeye hazır olduğunu söyler. Bu genellikle dinleme (listen) veya pasif bağlantı isteği (passive connection request) olarak adlandırılır. Şekilde, workstation birinci adımı gerçekleştirmektedir. Bu durumda workstation bir server olarak rol oynamaktadır. Bir sonraki adımda, ikinci sistemdeki bir uygulama TCP'ye aktif olarak birinci sistemdeki uygulama ile bir bağlantı kurmak istediğini söyler. Bu adım ise call (arama) veya active connection request (aktif bağlantı isteği) olarak adlandırılır. Uygulamanın isteğini gerçekleştirmek için PC'nin TCP'si bir "request packet" oluşturur ve bunu workstation'a gönderir. Şekil 7.6 Normal Bağlantı Kurulumu Üçüncü adım workstation bu kendisine gönderilen paketi aldığında başlar. Uygulama önceden bir bağlantı isteğinde bulunduğundan, TCP buna olumlu bir onay gönderir. Bu onay bağlantı değişiminin ikinci paketi ile taşınır. Bu noktada, PC'nin TC'si bağlantı kurulumunun tamamlandığını kabul eder. Bağlantı isteğini ilgili uygulamaya yollamış ve workstation'dan da olumlu yanıt almıştır. Diğer yandan workstation'daki TCP henüz kesin olarak emin değildir. İsteği yanıtlamıştır fakat bu yanıtın yerine doğru ulaşıp ulaşmadığını bilmemektedir. Bunu garanti edebilmek için, PC üçüncü bir paket yaratır (bağlantı kurma işleminin dördüncü olayı). Bu paket açıkça olumlu cevabın alındığına ilişkindir. Üçüncü paket workstation'a ulaştığında artık her iki sistem de bağlantının kurulduğunu bilmektedir. Three-way handshake terimi TCP'lerin birbirine yolladığı 3 ayrı paketten gelmektedir. Bağlantı kurulması TCP'nin sorumluluğunun bir parçası olmasına rağmen, bu örnek göstermektedir ki bu olayı uygulama protokolleri başlatmak zorundadır. Workstation'daki uygulama bağlantı kabul etmeye hazır olduğunu belirtmek ve PC'deki uygulama da aktif olarak böyle bir bağlantıyı aramak zorundadır. Birbiriyle anlaşabilecek iki uygulama olmaksızın TCP bir bağlantı kuramaz. 1

2 Bu örnek TCP'nin bağlantıyı tipik olarak nasıl kurduğunu göstermektedir. Buna göre, uygulamalardan biri pasif diğeri aktif bağlantı isteğinde bulunur. İki uygulamanın aktif bağlantı isteğinde bulunduğu durumlar da sözkonusu olabilir ki bu durumda da bağlantı kurulabilir. Şekil 7.7 böyle bir bağlantıyı göstermektedir. Her iki sistem de bağlantıyı kurmak üzere bağlantı isteği paketlerini yollarlar. Olumlu bağlantı cevabı göndermek yerine, herbir sistem sadece birbirinin isteğini kabul eder. Şekil 7.7 Bir bağlantıyı kuran iki aktif istek Transferring Data (Verinin transfer edilmesi) TCP bir kere kurulduktan sonra veri transferine başlanabilir. Tabiki bu bağlantının temel amacı veri transferini güvenilir yapmaktadır. Bu güvenirliği sağlayan ise sıra numaralarıdır (sequence number). TCP, uygulamanın verisini paketleyerek TCP paketinin içerisine yerleştirir. Genellikle TCP paketleri segment olarak adlandırılır. Verinin kendisine ek olarak segmentler sıra numaraları da içerir. Şekil 7.8 'de gösterildiği gibi, sıra numaraları verinin her byte'ına bir numara verir. Paketler hedefe ulaştığında alıcı TCP bu numaraları veriyi doğru bir şekilde oluşturmakta kullanabilir. Eğer TCP aynı sıra numarasına sahip birden fazla paket aldıysa, aynı paketin tekrarlandığına karar verir ve fazla kopyaları dikkate almaz. Benzer şekilde TCP, sıra numaraları arasında boşluklar olduğunu farkettiyse veri kaybının olduğunu kabul eder ve bunu düzeltmek için uygun adımları takip eder. Bir bağlantıda her iki yöndeki sıra numaralarının birbirinden bağımsız olduğuna dikkat edilmelidir. Örneğin, eğer bir istemci bir sunucuyla iletişimdeyse, istemci isteklerini gönderirken kendi sıra numlaralarını, sunucu ise cevaplarını tamamen ayrı kendi sıra numaralarını kullanarak gönderir. Bu iki sıra numarası kümesinin birbiriyle herhangi bir ilgisi yoktur. 2

3 Şekil 7.8 Her bir byte'ın numaralandırılması Acknowledgment (Onay) Sıra numaraları TCP'nin kayıp verileri tespit etmesini sağlar. Fakat TCP bunun tespitinden daha fazlasını yapabilir; kayıp verinin ortaya çıkarılmasını da sağlayabilir. Kayıp verinin elde edilmesi için eş TCP'ler birbiriyle doğrudan iletişime geçmek zorundadır. Bundan sonra, alıcı kayıp verinin olduğunu bilmektedir ancak bu veriyi tekrar yollaması gereken verici taraftır. TCP gerekli bilgilerin değişimini acknowledgment'lar üzerinden sağlar. Bir TCP diğerine bir paket gönderdiğinde, bu paket bir acknowledgment numarası içerebilir. Bu şekilde TCP "şu sıra numarasına kadar olan verilerin hepsini tam olarak aldım" demiş olur. Bu davranışı inceleyebilmek için Şekil 7.9'u gözönünde bulunduralım. Şekil 7.9 Verinin onaylanması Bu figürde PC veriyi üç ayrı pakette yollamaktadır. İlk paket 100'den 199'a kadar olan paketleri, ikincisi 200'den 299'a kadar olanları, üçüncüsü de 300'den 399'a kadar olanları içermektedir. Üçüncü paketi aldıktan sonra, workstation acknowledgment numarası içeren bir paket hazırlar. Workstation bir sonraki adımlarda 400 byte numarasıyla başlayan paketi beklediğinden bu acknowledgment numarası 400'dür. PC bu paketi aldığında daha önce yollamış olduğu tüm paketlerin yerine ulaşmış olduğunu bilir. Eğer veri hedefe ulaşmamışsa, açıktır ki hedef sistem bu veriye ilişkin acknowledgment bilgisini yollayamayacaktır. Bunu yerine sistem kayıp verileri belli eden bir acknowledgment paket yollayabilir. Şekil 7.10 bu durumu göstermektedir byte'ları içeren ikinci paket hedefine ulaşmamaktadır. Bunun sonucu olarak, workstation'un acknowledgment numarası 200'dür. Burada üçüncü paketin yerine ulaşmasına rağmen workstation'un bunu onaylamasına imkan yoktur. Bunun sonucunda PC yerine ulaşmayan paketin ikinci paket olduğunu bilir. Daha sonra bu paketi yeniden yollar. Bu ikinci şansla paket yerine ulaştığı taktirde workstation 400. byte'a kadar gelen veriler için bir acknowledgment yollayabilir. Örnekte gösterildiği gibi, PC'nin üçüncü paketi göndermesine gerek yoktur ( arasındaki byte'lar). 3

4 Şekil 7.10 Yeniden iletilen verinin onaylanması Flow Control (Akış Kontrol) Sıra numaraları aynı zamanda diğer bir fonksiyonda, akış kontrolünde önemli bir rol oynar. Akış kontrolü alıcının, gönderenin yolladığı verilerin miktarında bir sınırlama yapmasına olanak sağlar. Böyle bir sınırlamaya ihtiyaç duyulabilir, örneğin, alıcı verileri tutmak için sınırlı bir belleğe sahip olabilir. Akış kontrolu olmazsa, gönderen hiç bir sınırlama olmaksızın alıcının kapasitesini aşarak veri yollayabilir. Akış kontrolü her bağlantının süreklilik gösteren bir parçasıdır. Bağlantı kurulur kurulmaz ve devam süre boyunca her her sistem diğerine ne kadar veri kabul edebileceğini söyler. Bunu "window size" 'ı belirterek yapar. Şekilde, workstation başlangıçta "window size" 'ı 200 byte olarak belirtir ve bunu ackanowledment paketinin içerisinde söyler. Bu paket bir sonraki adımda 400 numaralı byte'tan itibaren 200 byte'lık veri bekler. PC buna karşılık 100 byte'lık iki paket yollar. Bu noktada PC kendisine izin verilen limiti doldurduğundan iletimi durdurur ve bekler. 4

5 Şekil 7.11 TCP akış kontrolü Urgent Data (Acil Veri) Normal verilere ek olarak, TCP acil veri kavramını da anlayabilir. Bazen uygulamalar normal verilere göre daha hızlı ulaştırılması gereken verilere sahip olabilir. Eğer uygulama mevcut bağlantıda normal veri gönderdiyse, acil veriler daha az acil olanların yerini alabilir. TCP verileri sıralı bir biçimde ulaştırır, dolayısıyla acil veri üzerinde herhangi bir ayarlama yapamaz. Bunun yerine uygulamaya ilişkide olduğu programa yollanan verilerin acil olduğunu söyleme iznini verir. Alıcı bu uyarıyı aldığında, acil verileri alabilmek için normal verileri mümkün olduğunca çabuk işler. Closing Connections TCP, bağlantıları uygulamaları için açtığı gibi uygulamalar sona erdiğinde de kaptacaktır. Bağlantı kurulmasında olduğu gibi, TCP genellikle uygulamaların isteği üzerine bağlantıları sona erdirir. Şekil 7.12 iki sistemin birbirine yolladığı paketlerin sırasını göstermektedir. Bir uygulama bağlantının sonlandırılmasını istediğinde TCP bir kapatma paketi yollar. Karşı taraftan buna dair bir acknowledgment alınır ve bir yöndeki veri akışı durdurulur. Şekilde, bu iletişim 1. ve 2. adımlara karşılık gelmektedir. Bu işlemden sonra PC, workstation'a artık bir bilgi göndermez. Bağlantıyı tamamıyla sona erdirmek için TCP, workstation'daki uygulamanın kapatma isteğini bekler. Bu olduğunda, TCP ters yönde aynı işi tekrarlar. Workstation bir kapatma bilgisi gönderir ve PC bir acknowledgment ile cevap verir. Şekilde görülen 3. ve 4. adımlardan sonra, herhangi bir yönde hiç bir veri akışı olmaz ve TCP bağlantısı bir varlık göstermez. Şekil 7.12 TCP bağlantısının sonlandırılması Transmission Control Protocol Specifications (TCP'nin tarifnamesi) Bir önceki kısım TCP'nin çalışmasına ilişkin temel işlemlerin çoğunu açıkladı. Bu bölüm TCP'yi daha derinlemesine inceleyecektir. Önce TCP paketlerinin formatlarını açıklayarak başlanacak, sonra TCP'nin formal olarak nasıl davranacağını belirten TCP durum makinasını anlatacaktır. Bunu takip eden konular TCP çalışmasının önemli kısımlarını açıklayan detaylı örnekler olacaktır. Bu altkısımlar daha önceki kısımların tekrarı gibi olacaktır ancak fonksiyonları daha detaylı ele alacaktır. Bu bölümün TCP programlarındaki gereksinimleri gözönünde bulunduracağına dikkat edilmelidir. Sonraki bölüm TCP uygulamalarının standarta eklediği farklı yollara bakacaktır. Çoğu zaman uygulama detaylarının sistem ve ağ performansı üzerinde çok önemli bir etkisi olabilir. TCP Packet Format (TCP paket formatı) Tüm TCP paketleri aynı temel formata sahiptir. Bu formatın detayları Şekil 7.13 'te görülmektedir. Uygulama verisinin öncesinde yer alan başlık (header), TCP paketlerinin bağlantı isteklerinden kullanıcı verilerine kadar, tüm tipleri için aynıdır. Farklı fonksiyonlardaki paketleri ayırmak için TCP, kontrol alanında farklı bilgiler kullanır. 5

6 Ports (Portlar) TCP başlığı kaynak ve hedef portları ile başlar. Bu alanlar gönderen ve alıcı için port değerlerini belirtir. Sequence Number (Sıra Numanarası) Bu 32 bitlik sıra numarası portlardan sonra gelir. Çoğu durumda, bu alan paketteki uygulama verisinin ilk byte'ıdır. Bu istisna SYN bit setinin bulunduğu paketlerde yer almaktadır (İlerideki "Control Field" bölümüne bakınız). Bu paketlerde sıra numarası alanı, gönderenin verisini nerede numaralandırmaya başlayacağını belirtir. Verinin kendisi bu alandan bir büyük sıra numarasına sahiptir. Şekil 7.13 TCP paket formatı Acknowledgment Number (Onay Numarası) Bir sonraki alan 32 bitlik acknowledgment numarasıdır. Bu alanın sadece control alanındaki ACK biti set edildiyse bir anlamı vardır. ACK biti set edildiğinde bu alan göndericinin beklediği sıra numarasını belirtir. Bu değere kadar (fakat bu değeri içermez) olan verilerin alındığına dair bir onay anlamını taşır. TCP birkere bir bağlantı kurduğunda, her pakette bu alanın olması zorunludur. (Diğer bir deyişle ACK biti daima set edilmelidir.) Şekil 7.14 TCP kontrol alanı Data Offset (Veri Ofseti) 6

7 Data offset TCP başlığındaki 32-bit'lik bir bilgidir ve alıcıya uygulama verisinin nerede başladığını söyler. TCP'nin bu bilgiye ihtiyacı vardır çünkü paketler çok farklı sayıda opsiyonlar içerebilir. Reserved (Ayrılmış) Data offset'in arkasından 6-bit reserved alanı gelir. TCP uygulamaları bu alanı daima 0 yapmalı ve bu değeri alınan paketlerde gözardı etmelidir. Control Field (Kontrol Alanı) Kontrol alanı bir diğer 6-bit'lik alandır. Şekil 7.14 bu alandaki bitlerin pozisyonlarını ve kısaltmalarını göstermektedir. Herbiri birbirinden bağımsızdır. Tablo 7.3 herbir bitin anlamını listelemektedir. Bazı kontrol alanı bitlerinin sadece başlıktaki bir başka alanın anlamlı olup olmadığını belirttiğine dikkat edilmelidir. Eğer bu alandaki bit 0 ise ilgili başlık bitinin bir anlamı yoktur. Başlık alanı, diğer yandan, pakette hala mevcuttur. Window (Pencere) Kontrol alanından sonra 16-bit'lik pencere gelir. Bu sayı sistemin kaç byte'lık veri kabul edebileceğini belirtir. Sistemin kabul edebileceği ilk byte acknowledgment biti tarafından numaralandırılır. Pencere değeri acknowledgment numarası ile birlikteyken önemli olduğundan, sadece acknowledgment alanı geçerli olduğunda bir anlam taşır. Diğer bir deyişle kontrol alanındaki ACK biti set edildiğinde anlamlıdır. Tablo 7.3 TCP Kontrol Alanındaki Bitler Checksum TCP başlığındaki (TCP header) bir sonraki alan checksum'dır. Paketlerdeki hataları denetler ve TCP'nin hatasız çalışmasını sağlar. Aslında, checksum TCP paketinden daha fazlasını kapsar. Aynı zamanda kaynak ve hedef ağ adreslerini ve bunların yanında IPv6 başlığını da içerir. Bu alanları içererek, checksum kendileri bozuk olmayan ancak yanlış yerlere ulaşmış paketlere karşı koruma sağlamış olur. Şekil 7.15 ek bilgilerin TCP paketine nasıl eklendiğini göstermektedir. Eklenmiş alanlar, ki bunlar "pseudo header" olarak adlandırılır, şekilde gri olarak gösterilmiştir. Checksum oluşturma kuralları UDP'ninki ile aynıdır. Ancak TCP göndericinin checksum'ı ihmal etmesine izin vermediğinden (bknz. sayfa 169), 0 checksum değerini değerlendirmeye gerek yoktur. Tablo 7.4 TCP'nin checksum değerini üretmede kullandığı kuralları özetlemektedir. Burada birli tamamlama (ones complement) aritmetiği kullanıldığına dikkat edilmelidir. Bu hesaplama modern CPU'larda bulunan ikili aritmetikten farklıdır. Çoğu TCP uygulamaları bu sebeple bu işlemi gerçekleştirmek için özel bir yazılım kullanmak durumundadırlar. Açıkça bu işlem, toplama işlemini donanım üzerinde gerçekleştirmekten ("twos complement" kullanarak) daha az verimlidir. Verim kaybına karşın, TCP'nin yaygın hataları tespit etme yeteneği daha fazladır. Calculating Checksums Efficiently ( "checksum'ların verimli olarak hesaplanması") UDP'de olduğu gibi, ağ uygulamalarında en önemli performans faktörlerinden biri checksum'ları hesaplamadaki performanslarıdır. Çeşitli RFC'ler bu performansı artırmak için önerilmiştir; En eksiksiz RFC, RFC 1071'dir. 7

8 Alıcı da aynı yaklaşımı kullanmaktadır. Tablo 7.5 bunu adımlarla açıklamaktadır. Alıcı geçersiz bir checksum bulduğunda paketi daha fazla bir işlem yapmaksızın görmezden gelir. Şekil 7.15 TCP checksum tarafından kapsanan veri Tablo 7.4 TCP Checksum'ın Oluşturulması Tablo 7.5 TCP Checksum'ın Doğrulanması 8

9 Urgent Pointer (Acil Göstergesi) TCP başlığında en son gerekli alan "urgent pointer" ' dır. Kontrol alanındaki URG biti set edilmedikçe bu göstergenin bir anlamı yoktur. Bu alan geçerli olduğunda, paket iki şeye işaret eder. Birincisi, gönderen acil olarak gözönünde bulundurulmasını istediği bir veri yollamaktadır. İkincisi, "pointer" 'ın kendisi bu acil verinin sonunu belirtmektedir. Eğer alıcı, acil göstergesi de dahil olmak üzere onun gösterdiği yere kadar olan tüm verileri işlerse, acil veriyi işlemiş olacaktır. Bir örnek görmek için, Şekil 7.16 'ya bakın. Burada TCP paketi sıra numarası olarak 1000, acil göstergesi olarak ta 200'e sahiptir. Bu değerlerle, paketteki uygulama verisi 1000 numaralı byte'tan başlamaktadır. Acil veri 1200 numaralı byte'a kadar (bu byte ta dahil) devam eder, ve normal verinin 1201 numaralı byte'tan başladığı kabul edilir. Şekil 7.16 Acil göstergesi örneği Acil göstergesi ile ilgili iki önemli şey vardır. Birincisi, acil verinin aslında nerede başladığını belirtmez. Bu eğer önemli ise uygulamaların bunu kendilerinin belirlemesi gerekir. İkincisi, acil veri acil göstergesi bulunan bir paketin içerisinde yer almayabilir. Örnekte, eğer paket sadece 100 byte içeriyor olsaydı, acil verinin bir başka paketi bekliyor olması gerekirdi. Acil göstergesinin amacı basitçe alıcıyı verinin olabildiğince hızlı işlenmesi için uyarmasıdır. Options (Opsiyonlar) TCP başlığının en küçük halinde kalabilmesi için, acil göstergesi son alandır. Bunu takip eden herşey uygulama verisidir. Eğer "data offset" değeri 5'ten daha büyük bir değer almışsa, bu durumda paket, uygulama verisinden önce yer alan TCP opsiyonlarını da içerir. Opsiyonların uzunluğunu belirlemek için, TCP uygulamaları "data offset" değerinden en küçük başlık boyutunu (32-bit word'lerden beş adet) çıkarır. TCP başlığının opsiyon alanı çeşitli birbirinden bağımsız tercihleri içerebilir. Bu tercihler Şekil 7.17 'de gösterilen iki formdan birini alır. En basit tipi tek byte'tan oluşanıdır. Bu hem tipini ve de dolaylı olarak tercih değerini belirtmektedir. Tek bir byte'tan daha büyük olan opsiyonlar şekildeki ikinci formu alırlar. İlk byte opsiyonun tipini; diğeri opsiyonun boyutunu (tip ve boyut byte'ları da dahil), kalan byte'lar ise opsiyon değerini içerir. TCP ileride hangi opsiyonların tek, hangilerinin çok byte'tan oluştuğunu bilmek zorundadır. Aksi taktirde, opsiyon alanını doğru olarak yorumlayamayabilir. Tablo 7.6 TCP opsiyonlarını tanımlamakta ve hangilerinin tek hangilerinin çok byte olduğunu belirtmektedir. 9

10 Şekil 7.17 TCP opsiyon formatları Tablo 7.6 TCP Opsiyonları End of Options (Opsiyonlerin Sonu) 0 opsiyon tipi, TCP paketindeki opsiyonların sonu olduğuna işaret eder. Bu artık alıcıya TCP başlığının kalan kısmında daha fazla opsiyon beklememesini söyler. TCP'nin buna "data offset" alanının formatı yüzünden ihtiyacı vardır. Bu alan TCP başlığının boyutunu 32-bit word'lerle tanımlar, böylece tüm TCP başlıklarının boyutları dördün katları olmak zorundadır. Eğer gönderenin bu dört byte'ı dolduracak yeterli anlamlı verisi yoksa, bu seçimi kullanabilir. TCP onu anlamlı opsiyonlardan sonra yerleştirir, ve sonra fazladan rasgele değerler ekler. Bu opsiyon geçerli opsiyonların sonunu gösterdiğinden, alıcı fazla byte'ları görmezden geleceğini bilmektedir. TCP'nin her pakette bir opsiyon sonu içermek zorunda olmadığına dikkat edilmelidir. Eğer normal opsiyonlar doğal olarak 4-byte sınırında sona eriyorsa TCP bu opsiyonlarla başlığı hazırlar. No Operation (İşlem Yok) 1 opsiyon tipi hiç bir işlem olmayacağını belirtir ve alıcıya bu özel byte'ı görmezden gelmesini fakat opsiyon alanını işlemeye devam etmesini söyler. "Noop" opsiyonu (sıklıkla çağrıldığı gibi) TCP'nin aşağıdaki opsiyonları uygun word sınırlarına getirmesine olanak sağlar. Bunun kullanımına örnek olarak, daha sonra gelecek olan "timestamp" tartışmasına bakınız. Maximum Segment Size (En Büyük Dilim Boyutu) TCP bu opsiyonu sadece bağlantı kurulması esnasında kullanır. Eğer varsa, gönderenin almaya hazırlandığı en büyük paket boyutunu belirtir. Karşıdaki TCP bu değerden daha büyük boyutta bir paket yollamamalıdır. Bu değer TCP başlığını içermez, sadece uygulama verisi için geçerlidir. TCP bağlantısında heriki tarafta ayrı ayrı kendileri için bu değeri belirleyebilirler. Şekil 7.18 MSS opsiyonunun formatını göstermektedir. Window Scale Factor (Pencere Skala Faktörü) Pencere skala faktörü pencere alanı için bir çarpan sağlar. Bu değer olmadan pencere alanı sadece byte'ları belirtir. Bu alan 16-bit olduğundan TCP bu opsiyon olmadan 65,535 byte'tan daha büyük bir pencere tanımlayamaz. İlk bakışta, 65,535 byte oldukça büyük 10

11 gibi gözükebilir. Yüksek hızlı veya büyük gecikmeli ağlarda bu pencere boyutu performansı ciddi bir şekilde sınırlayabilir. Bu etkinin pratik bir örneğini düşünmek için Tokyo'dan Newyork'a bir fiber optik bağlantıyı gözönünde bulundurabilirsiniz. Pencere skala faktörü olmaksızın böyle bir bağlantıda taşınacak veri 65,535 byte olacaktır. Şekil 7.19 bu sınırın "throughput" 'u nasıl düşürdüğü görülmektedir. Tokyo ile Newyork arasındaki uzaklık ve ışığın camdaki hızı verildiğinde, paketlerin bir taraftan diğer tarafa seyahat hızı 50 ms olmaktadır. Tokyo'daki workstation'un paketi yolladığı andan itibaren, Newyork'tan acknowledgment gelmesi için beklemesi gereken süre en az 100 ms olacaktır. Şekil 7.18 TCP maximum segment size opsiyonu Şekil 7.19 Pasifik aşan bir bağlantı üzerindeki gecikme 65,535'lik bir pencere boyutu ile, bu bağlantı üzerinde 100 ms'de ancak 65,535 byte gönderilebilir. Bu hız 5 Mbit/s 'den biraz daha hızlıdır. Fiber optik bağlantı 1.24 Gbit/s bant genişliğinde olmasına rağmen TCP bağlantısı 5.2 Mbit/s hıza sınırlanmış durumdadır. Böyle bir durumda tek suçlu gecikme değildir. Burada gecikme ve yolun bantgenişliğinin çarpımı etkilidir. Örneğin, eğer Tokyo-New York bağlantısı 1.54 Mbit/s'lik bit T1 bağlantısı olsaydı bu durumda TCP hızını sınırlayan pencere boyutu değil, bit-rate olurdu. 11

12 Şekil 7.20 Gecikme-bantgenişliği çarpımından "throughput" sınırı Şekil 7.20 gecikme-bant genişliği çarpımına göre "throughput" sınırını çizmektedir. Burada standart 65,535-byte TCP penceresi kabul edilmiş ve kullanılabilir bant genişliği çizilmiştir. Şekilde görüldüğü gibi sınır, gecikme-bant genişliği yaklaşık 1 milyon bit iken belirmeye başlar. Bu şekil aynı zamanda gecikme-bant genişliği çarpımı için 3 önemli değeri daha verir. Bu değerler küçük (500 metre) ethernet ağına, bir T1 (1.54 Mbit/s) uydu ağına, ve pasifiği geçen bir OC3 (155 Mbit/s) fiber optik bağlantısına karşılık gelmektedir. Grafik yüksek hızlarda bugün sık kullanılan büyük ağlarda bile pencere boyutunun hızı nasıl sınırladığını açıkça göstermektedir. Şekil 7.21 TCP Pencere skalası opsiyon formatı Şekil 7.21 'de gösterilen pencere skala opsiyonu bu sınırlamanın üstesinden gelebilecek bir yol sağlar. Skala opsiyonu sadece bağlantı isteği ve cevabı esnasında ve her iki sistem de bunu kullanmada anlaşmışsa gönderilir. Bu opsiyon bir bağlantıda kullanımda ise, pencere boyutu alanları ikinin katları ile çarpılır. İkinin kuvvetleri ile çarpımın özel bir yolu bit kaydırma işlemidir. (İkili sayının bitlerini sola doğru n defa kaydırmak onu 2^n ile çarpmakla aynıdır.) Örneğin bir sistem, pencere skala opsiyonunu 3 bit kaydırma yapacak şekilde anlaştığı zaman, pencere boyutu 2^3 ile çarpılır. Eğer sistem pencere boyutunu 100 olarak belirttiyse, bu durumda alıcı pencere boyutunu 800 olarak yorumlayacaktır. Pencere skala opsiyonu TCP'nin pencereyi 16 milyon byte'a kadar yükseltmesine olanak sağlar. Böyle bir pencere pasifik aşan bir fiberi bantgenişliği 1.3 Gbit/s 'yi geçmedikçe sınırlamaz. Timestamp Timestamp opsiyonu tüm paketlerde anlamı olan tek opsiyondur. Diğer tüm opsiyonlar bağlantı isteği ve yanıtlarında anlamlıdır. Bu opsiyon TCP uygulamalarının bir bağlantıdaki "round-trip" süresini sürekli olarak izlemelerine olanak sağlar. Şekil 7.22 timestamp opsiyonunun yapısını göstermektedir. Toplam uzunluğu 10 byte'tır ve 4-byte'lık iki değerden oluşur. Bu değerlerin ikisi de zamanı vermektedir. Birinci değer birincil timestamp değeridir. Bir sistem iletim için bir paket hazırladığında, bu değer o sistemdeki yerel zamanı ifade eder. A Limit to Window Scaling (Pencere skalalandırılmasına bir Sınır) Pencere skala opsiyonu 255 'e kadar olan değerleri tutabilecek yapıda olmasına rağmen, TCP geçerli değerleri 0 ile 14 arasına sınırlamıştır. Üst sınır sayesinde TCP alıcı ile gönderen arasındaki en büyük farkın 2^31 'den daha büyük olamayacağını bilir. Böyle bir sınır olmaksızın, TCP 32-bit sıra numarasının 2^31-1 'den 0'a ne zaman düştüğünü söyleyemezdi. Eğer TCP 14'ten büyük bir pencere skala opsiyonu alırsa bu opsiyonu 14 olarak kabul eder. 12

13 TCP bu timestamp değeri için bazı gereksinimler ortaya koyar. Bu değer saniye, dakika veya diğer standart zaman birimlerinden biri olmak zorunda değildir. Gönderenin daha sonra düşürmeyeceği bir değer olması yeterlidir. (Tabiki bu değer 32-bit 'e ulaştığında 0 'a dönmek zorunda kalacaktır.) Şekil 7.22 TCP timestamp opsiyonu formatı İkinci timestamp değeri sadece acknowledgment paketlerinde anlamlıdır. Örneğin, TCP timestamp'ı 500 olan bir paket almış olsun, bu durumda gönderene bir acknowledgment paketi yollayacaktır. Bu paketin içinde birinci timestamp değeri kendi zaman referansını kullanabilir. Diğer yandan timestamp eko değeri 500 olmak zorundadır. (Bu durumun istisnaları da vardır; "Acknowledgment and Retransmission" kısmına bakınız.) Timestamp opsiyonu tüm paketlerde yeraldığından, TCP uygulamalarının bu opsiyonu mümkün olduğunca verimli kullanabilmeleri için bazı adımları takip etmesi gerekmektedir. Verimi işlemcilerle artırmanın yollarından biri 32-bit'lik değerin işlemci hafızasındaki 32-bit adreslerle uyuşup uyuşmadığından emin olmaktır. Bu ayarlamayı sağlamak için TCP, timestamp opsiyonu için Şekil 7.23 'ü önermektedir. Önerilen yapının iki 'işlem yok' (noop) eklediğine dikkat edilmelidir. Bu iki ekstra byte, 32-bit timestamp değerini 32bit word'e denk getirmeye yarar. Şekil 7.23 TCP timestamp opsiyonu için önerilen yapı Tablo 7.7 TCP Bağlantı Durum Geçiş Diyagramında Durumlar 13

14 The TCP State Machine (TCP Durum Aygıtı) TCP, paketlerini bağlantıların kurulması, sürdürülmesi ve sona erdirilmesi için kullanmaktadır. Bu işlemler Tablo 7.7 'de listelenen iyi tanımlanmış bir dizi durumlarla belirlenmiştir. TCP'nin durumları uygulamaların isteklerine, alınan paketlere ve zamanlayıcıların süreli sonlandırmalarına cevaben değişir. Şekil 7.24 bu davranışı bir durum-geçiş diyagramı ile özetlemektedir. Diyagram, durumlar arası geçişleri belirtmek için okları kullanmaktadır. Her geçiş hangi olayın bu geçişi başlattığını belirten bir başlığa sahiptir. Bu olaylar yatay çizgilerin üzerinde, ve faaliyetler de çizgilerin altında yer almaktadırlar. Bazı geçişler TCP'nin herhangi bir iş yapmasını gerektirmezler, ve bu geçişlerin yatay çizgilerinin altında birşey bulunmamaktadır. Tablo 7.8 bu geçişleri doğuran olayları listelemektedir. Tablodan da görüldüğü gibi, Üç değişik tipte iş vardır. Bunlar uygulama istekleri, eş TCP'den alınan paketler ve zamanlayıcı süreli sonlandırmalardır. Durum geçiş diyagramının içerdiği işler TCP'nin eşine yollamış olduğu paketlerdir. Tablo 7.9'dan da görüldüğü gibi, durum geçiş diyagramı sadece dört olası paketi gözönünde bulundurmaktadır. Acknowledgment içermeyen has veri paketleri durum geçişlerinin bir sonucu değildir. Tablo 7.8 TCP Bağlantı Durum Geçiş Diyagramında Olaylar 14

15 Şekil 7.24 TCP bağlantısı durum geçiş diyagramı Establishing Connections Durum geçiş diyagramının açıkladığı gibi, TCP bağlantıları doğrudan ve çok açık bir biçimde kurar. Çoğu durumda, bir uygulama pasif bağlantı isteği veya dinleme ile başlar. Bu işlem sistemler arasında hiçbir paket alışverişinin olmamasını sağlar, fakat bir sistemin TCP'sini dinleme durumuna koyar. 15

16 Ağ aktivitesi, eş uygulamalardan biri aktif bağlantı isteğinde bulunduğunda başlar. Bu uygulamayı destekleyen TCP kendisini dinleyen eşine bir bağlantı isteği paketi yollar. Şekil 7.25 bir örnek bağlantı isteği paketini göstermektedir. Paket, kaynak ve hedef portları ile başlar. Bu değerler uygulamayı belli ederler. (Örnekteki hedef portu dosya transferi protokolünde çok sık kullanılan bir port'tur.) Bunu sıra numarası takip eder. Bu paket hiçbir uygulama verisi içermemesine rağmen sıra numarası önemlidir. Tablo 7.9 TCP Bağlantısı Durum Geçiş Diyagramında Hareketler Şekil 7.25 Aktif bağlantı isteği paketi örneği Bağlantı istek paketleri için TCP, paketin kendisine bir sıra numarası atar. Bu durumda paket 10,000 sıra numarasına sahiptir. Eğer gönderen bu özel bağlantı isteğini yeniden yollamak ihtiyacını duyarsa aynı sıra numarasını kullanmak zorundadır. Bu sıra numarası aynı zamanda TCP'nin verisini nerede numaralamaya başlayacağını belirtmektedir. Uygulama verisi bağlantı isteğinden daha büyük bir sıra numarası ile başlayacaktır, böylece bu balantıdaki veri 10,001'den başlayarak numaralandırılacaktır. Acknowledgment numarası bağlantı isteğinde bir anlam taşımamaktadır, dolayısıyla bunun değeri rasgele verilebilir. Diğer yandan pakette hiç veri bulunmamasına rağmen offset alanı önemlidir. Bu durumda offset alanı TCP başlığının uzunluğunu belirtmektedir. Bunun değeri 10'dur, yani paket 10 adet 32-bit word, diğer bir deyişle 40 byte içermektedir. Kontrol alanı set edilmiş tek bite sahiptir. Bu bit SYN'dir ve bu paketin bir bağlantı isteği olduğu belirtir. Pencere alanı acknowledgment'a bağlı olduğundan, ve bağlantı isteği acknowledgment içermediğinden, pencere alanı da aynı zamanda önemsizdir. Checksum ve acil göstergeleri TCP başlığını tamamlarlar. Checksum paket için uygun değeri taşır, acil göstergesi ise önemsizdir. Takip eden iki alan ise TCP opsiyonlarıdır. İlk opsiyon "maximum segment size" 'dır. Bununla TCP 1,024 byte'a kadar olan paketleri kabul edebileceğini söyler. Böylece gönderen eşine verisini bu boyutta veya altında paketlere ayırmasını söyler. Paket daha sonra pencere skala opsiyonunu içerir. Ancak, bağlantı isteği paketi bu opsiyonda son söze sahip değildir. Bağlantı isteği ve cevabının herikisinde de bu opsiyon olduğu zaman TCP sadece pencere skalasını (sıfırdan farklı olarak) kullanabilir. Aynı kural eş Initial Sequence Numbers (Başlangıç Sıra Numaraları) Bağlantıları sonlansa dahi paketler hala hayatta kalabildiğinden, TCP başlangıç sıra numaralarının seçiminde dikkatli olmak zorundadır. Daha önceki bağlantıdan herhangi bir numaranın artık seçilmediğinden emin olunması gerekir. TCP standartı bu numaranın 4 s'de bir artan saatin baz alınarak seçilmesini önermektedir. Eğer sistem saatin değerini kaybederse (örneğin bir kilitlenmeden dolayı), tekrar başladıktan bir kaç dakika sonrasına kadar hiçbir TCP paketi yollamamalıdır. Bu süre "quiet time" (sessiz kalma süresi) olarak bilinir. 16

17 TCP içinde geçerlidir. Bu sebepten TCP, sıfırın pencere skalası üzerinde bir etkisi olmasada bir sıfır pencere skala opsiyonu içerir. Sıfır değeri TCP'nin kendi penceresini skalalandırmak istemediğini söyler, ancak eş TCP eğer isterse öyle yapabilir. Üç adet "noop" 'tan (işlem yok) sonra (byte sayılarının uydurulması için), paket timestamp opsiyonunu içerir. Bu opsiyon geçerli bir değer taşısa bile, bağlantı isteği paketinde doğrudan bir amaç taşımaz. Sistemler bunu bu opsiyonu anlayabildiklerini ve ileride kullabileceklerini belirtmek için kullanırlar. (Dipnota bakınız) Timestamp opsiyonları tekrarlanmış paketleri tespit etmekte kullanılabilseler bile bu amaçla kullanılmazlar. Bu amaçla kullanıldıkları taktirde çok titiz bir uygulama gerektirirler ve TCP tasarımcıları böyle bir davranışın sistemlere fazla yük getireceğini düşünmektedirler. Bunun yerine TCP, başlangıç sıra numarasına ve "quiet time" parametresine dayanarak paket tekrarlamalarını tespit eder. Şekil 7.26 Örnek bağlantı cevabı paketi Bu paket hedefine ulaştığı zaman, eş TCP bunu cevaplar. Bir uygulamanın bu bağlantıyı dinlediğini varsayarak, cevap paketi de Şekil 7.26 'daki formu alır. (Şekil 7.25 'te gösterilen paketin cevabı) Beklenildiği üzere bağlantı cevabı, kaynak ve hedef portlarını tersine çevirir. Kaynak, dosya transferi protokolü sunucusu ve hedef te bu isteğin kaynağıdır. Sıra numarası, bağlantı isteğindeki fonksiyonunun aynısına sahiptir. Cevap paketini numaralandırır ve gönderenin verisini nerede numaralandırmaya başladığını belirtir. Bu durumda cevap, sıra numarası 30,000 'de verilir, ve veri 30,001 numaralı byte'tan itibaren yer alır. Acknowledgment numarası bağlantı isteğinin sıra numarası olan 10,000'in kabul edildiğini belirtir. Bu numara aynı zamanda gönderenin bir dahaki sefere 10,001 numaralı byte'ı beklediğine işaret eder. Cevabın offseti, istekte olduğu gibi, TCP başlığı boyutunu 10 adet 32-bit word olarak tanımlar. Şeklin de onayladığı gibi, cevabın TCP başlığı 40 byte uzunluğundadır. Kontrol alanı iki adet biti, ACK ve SYN bitlerini set eder. Bu bitler birlikte paket tipini bağlantı cevabı olarak tanımlarlar. Bu paket bir acknowledgment numarası içerdiğinden aynı zamanda bir pencere de içerir. Bu durumda, pencere değeri 4,096'dır. Pencere skala opsiyonu ile birlikte verildiği taktirde (kaydırma sayısı 1 olan) bu pencere, eş TCP'ye 8,192 byte'lık veri gönderebilme izni verir. Bu byte'lar 10,001 'den 18,192 'ye kadar numaralandırılmıştır. Compatibility with Older TCPs (Eski TCP'lerle uyumluluk) Pencere skalası ve timestamp opsiyonlarının herikiside orjinal TCP standartında yoklardı. Eski TCP uygulamalarının çoğu bu sebeple sözkokonusu opsiyonları anlayamaz. Eski uygulamalarla uyum sağlayabilmek için sistemler ancak eş TCP bunları anlayabileceğini belirtmişse bu opsiyonları kullanır. TCP'ler bu opsiyonları desteklediklerine ilişkin bilgiyi bağlantı isteği paketlerinde bunları kullanarak verirler. Eğer bir sistem bağlantı isteğinde opsiyonu kullanmış ancak eşi bağlantı cevabı paketinde bunu kullanmamışsa bu sistem kurulan bağlantıda bu opsiyonu kullanamaz. Refusing a Connection (Bir Bağlantının Red Edilmesi) Bu örnek, gelen bağlantı isteğinin kabul edildiğini varsaymaktadır. Eğer alıcı bağlantıyı kabul etmek istemiyorsa, bir reset paketi göndererek bağlantıyı red edebilir. Bunun için bir sonraki "Resetting a Connection" kısmına bakınız. 17

18 Başlığın diğer yarısı TCP opsiyonlarını içerir. İlk olarak gönderen "maximum segment size" 'ı 1,024 byte olarak belirler. Bu değer rastlantısal olarak eş TCP'ninkiyle aynıdır. Diğer opsiyon ise pencere skala faktörünü 1 olarak belirler. Daha önce açıklandığı gibi bu opsiyon pencere boyutunu 2^1 ile çarpar. Paket daha sonra timestamp opsiyonunu koyar. Bağlantı isteğindeki gibi, bu opsiyonun cevapta da bir önemi yoktur. Diğer yandan sadece timestamp opsiyonunun tanındığına dair bir işaret verilmiş olur. Bu değerin tekrarlanmış paketlerin tespitinde bir etkisi olmasada, eş sistem bu değeri bağlantının "round-trip" zamanının bulunmasında kullanabilir. Son adım bağlantı cevabının acknowledgment değeridir. Şekil 7.27 örnek bir acknowledgment paketini göstermektedir. Acknowledgment paketi bağlantı isteği ile aynı yönde gider. Şekil 7.27 Örnek onay paketi Sıra numarası için, paket verinin ilk byte'ının numarasını(paketin kendisi hiçbir uygulama verisi içermemesine rağmen) içerir. Acknowledgment numarası karşıdakinin bağlantı isteğini onaylar. Bunun değeri cevabın sıra numarasının bir fazlasıdır. Offset TCP başlığının boyutunu 32 byte olarak verir, ve kontrol alanı ACK bitini bunun bir acknowledgment olduğuna dair set eder. Pencere alanı gönderenin penceresini bildirir. Bu değer 2,000 'dir, ve bu gönderici için pencere skalası sıfır olduğundan, bu değerde bir değişiklik olmayacaktır. Sonunda başlık timestamp değeri ile paketi sonlandırır. Bu değerden önce yer alan iki noop opsiyonu ile bu değerler 32bit word sınırına denk getirilir. Acknowledgment paketi hedefine vardığı zaman, "three-way handshake" tamamlanmıştır. Bu noktada, bağlantı kurulmuştur. Şekil 7.28 bu örneği özetlemektedir. Şekilde sadece önemli olan başlık alanları gösterilmiştir. Her iki sistem de aktif olarak bir bağlantı isteğinde bulunduğunda, prosedür yine çok benzerdir. Paketleri detaylı bir şekilde göstermek yerine, Şekil 7.29 bu değişimi özetlemektedir. Şekilde gösterilmeyen TCP başlık alanları normal durumdakinin aynısıdır. Şekil 7.28 Normal bağlantı kurulumu Application Data During Connection Establishment (Bağlantı Kurulumu Esnasında Uygulama Verisi) Örneklerde gösterilmemesine rağmen, bağlantı isteği ve cevabının yanında acknowledgment paketi de uygulama verisi taşıyabilir. Fakat TCP bu veriyi uygulamaya bağlantı kurulmadan ulaştıramaz. Bir çok durumda sadece son acknowledgment paketi gerçekte uygulama verisi taşır. 18

19 Şekil 7.29 Aynı anda bağlantı kurulumu Resetting a Connection (Bağlantının Yeniden Kurulması) Bir önceki kısma bakılacak olursa, bağlantı kurulumu oldukça açık ve doğrudan bir işlem olarak göze çarpmaktadır. Eş sistemler basitçe TCP paketlerini değişmektedirler. Gerçek ağlarda bu işlemlerde birtakım komplikasyonlar olabilmektedir. Bazen paketler ağlarda olması gerektiğinden veya ulaşması gereken süreden çok daha uzun süre seyahat halinde kalabilirler. Ekstra önlemler olmaksızın, bu karakteristik bağlantı kurulumunda bazı hasarlara yola açabilir. Şekil 7.30 'daki örneği gözönünde bulundurun. Burada kişisel bilgisayar workstation'a bağlanmak istemektedir. Beklenildiği üzere, bir aktif bağlantı isteği gönderir. Fakat bu istek yerine ulaşmadan, daha önceki bağlantıdan bir istek workstation'a gider. Workstation doğal olarak bir isteğin zaman aşımına uğradığını bilemez ve bağlantıyı kabul eder. PC <SYN, ACK> paketini aldığı zaman problemin farkına varır. Paketin acknowledgment numarası 9,001'dir, ancak bu numara 10,001 olmalıdır. Workstation yanlış bağlantı isteğini kabul etmiştir. PC bu uygun olmayan bağlantıyı kullanmaya hemen başlayamaz. Tüm bunlardan sonra, eğer eski bağlantının hala bir bağlantı isteği ağ üzerinde muvcut ise, veri paketlerinin de ağ üzerinde dolaşıyor olması olasılığı oldukça yüksektir. Şekil 7.30 Eski bağlantı isteği Bu problemi düzeltmek için, kişisel bilgisayar özel bir yeniden başlatma paketi gönderir. Bu pakette TCP kontrol alanındaki RST biti set edilmiştir. Workstation bu paketi aldığında, tekrar dinleme durumuna geri döner. Daha sonra gerçek bağlantı isteği yerine ulaştığında, workstation bunu doğru bir biçimde cevaplayabilir. Şekil 7.31 tam olarak bu kurtarma olayını göstermektedir. Bu şeklin PC'nin kendi orjinal bağlantı isteğinin üzerine yaptığı bir yeniden başlatma olduğuna dikkat edilmelidir. Bu olayı basitleştirmektedir, fakat pek fazla gerçekçi değildir. Çoğu durumda, workstation gerçek bağlantı isteğini eski bağlantıyı kabul ettikten hemen sonra alır. Workstation bu durumda kendi yeniden başlatma paketi ile cevap verir, ve her iki sistem de bağlantı kurma işlemlerine yeniden başlar. 19

20 Yeniden başlatma paketi, bağlantı isteklerine karşı korumanın ötesinde başka ek özelliklere de sahiptir. Sayfa 17'nin dipnotunda görüldüğü gibi yeniden başlatma, TCP'ye aynı zamanda bağlantıyı reddetme imkanı da sağlar. Genelde TCP mevcut bağlantıya ait olmayan bir paket aldığında yeniden başlatma paketi ile cevap verir. Tablo 7.10 bu paket gönderilirken TCP'nin takip ettiği kuralları listelemektedir. Şekil 7.31 Eski bağlantı isteğinden kurtulma TCP nezaman bir pakete yeniden başlatmayla karşılık verse, bu olayı formüle edecek bir dizi kuralı takip eder. Eğer paketin acknowledgment numarası varsa, TCP bunu yeniden başlatma paketinin sıra numarası olarak kullanır. Aksi taktirde TCP yeniden başlatma paketine sıra numarası olarak sıfır verir ve acknowledgment numarası da paketin sıra numarası ile segment uzunluğunun toplamına eşit olur. Tablo 7.10 Reset Paketlerinin Gönderilmesi Tablo 7.11 Alınan bir Reset Paketin Doğrulanması 20

21 TCP bir yeniden başlatma paketi aldığında, ilk olarak bu işlemin geçerli olup olmadığına karar verir. Tablo 7.11 bu işlemin ne zaman geçerli olduğunu belirten kuralları listelemektedir. Eğer yeniden başlatma geçerli ise, o zaman TCP buna bir kaç yoldan biriyle cevap verir. Tablo 7.12 'de görüldüğü gibi, bu cevaplar sadece bağlantının durumuna bağlı değil, aynı zamanda bağlantının bu duruma nasıl ulaştığına da bağlıdır. Transferring Data (Verinin Aktarılması) TCP bağlantıyı birkere kurduktan sonra, bu bağlantı uygulama verilerinin aktarımı için artık hazır durumdadır. Bu aktarımın sıralı bir şekilde ve güvenli olması için TCP yolladığı her byte'ı numaralandırır. Bir sistem bağlantı kurduğunda karşıdaki sisteme verinin ilk byte'ında kullanacağı sıra numarasını bildirir. Ordering Data TCP başlığı sıra numaraları için özel bir alan ayırdığından, sıra numarasının uzunluğu bu alanın içine sığabilecek sayı ile sınırlıdır. Bu alan 32 bit'tir, böylece sıra numaraları sıfırdan 2^31-1 e kadar değişebilir. Buradan doğal olarak çıkan soru, bu sınıra ulaşıldığında ne olacağıdır. TCP'nin cevabı tekrar başa dönmektir. Diğer bir deyişle byte 4,294,967,295 'i 0 takip etmektedir. Sıra numaraları bir bağlantıda birçok kereler bu şekilde başa dönebilir. Tablo 7.12 Alınan bir Reset Paketinin Cevaplandırılması Diğer yandan, bu başa dönmeler bir başka soruyu getirirler. TCP bu sıfırın gerçekten bir başlangıç mı yoksa bir başa dönme mi olduğunu nasıl anlayacaktır? Bu soru iki sıra numarasının sırasını belirlemede önemlidir. Başa dönmeler sebebiyle bunun hesaplanması normal matematik hesaplarından biraz daha karmaşıktır. TCP, A ve B gibi iki numaranın sırasını belirlemek için özel bir kural kullanır. Eğer aşağıdaki koşul doğru ise A'nın B'den küçük olduğuna karar verilir. 0 < (B-A) < 2^31 Düşük ve orya hızdaki ağlar için, bu özel test herhangi bir problem yaratmaz. Böyle ağlarda sıra numarasının başa dönmesi oldukça fazla zaman alır. Ve, ağ üzerinde tüm paketlerin makul bir yaşam süresi olduğundan, mevcut bir paketin yeni mi eski mi olduğu hakkında genelde bir soru olmaz. Buradaki anahtar ölçüm tekrar başa dönme için gereken sürenin yarısının ne olduğu veya ağın 2^31 byte veriyi hangi hızda aktarabildiğidir. Tablo 7.13 popüler ağlar için bu süreyi vermektedir. 21

22 Tablo 7.13 Çeşitli Ağlar için Zaman Sınırları Tablodan da görüldüğü gibi, ISDN veya ethernet'te herhangi bir karışıklığın olması zordur. Pratik olarak bakacak olursak, paketler bir ağ üzerinde bir-iki dakikadan fazla durmazlar. Diğer yandan yüksek hızlı ağlarda, örneğin ATM'de, başadönüş süresi önemli bir faktör olmaktadır. Bu ağlarda bir paketin 6-7 saniye boyunca takılıp kalması olasılığı oldukça yüksektir. Bu paket daha sonra hedefine geldiğinde, alıcı sadece sıra numarasına bakarak onun eski mi yeni mi olduğunu anlayamayacaktır. Yüksek hızlı ağların efektif olarak çalışabilmesi için TCP, timestamp opsiyonunu kullanır. Bu opsiyon herbir pakete 32-bit timestamp ekler. Bu değer milisaniyede veya saniyede bir kere olacak şekilde artmalıdır. Ağ hızı 17 Gbit/s 'den az olduğu sürece, sıra numarasının timestamp değeri bir artmadan başa dönmesi imkansızdır. Bunun yanında, timestamp değerinin de başa dönmesi 24 günden önce mümkün değildir. Timestamp ve sıra numaralarını biraraya getiren örnekler Tablo 7.14 'te verilmektedir. İlk örnek oldukça basittir. Timestamp'lerin ikisi de aynıdır, bu yüzden sadece sıra numarası önemlidir. Başa dönmeyi gözönünde bulundursak bile, bir ikiden küçüktür, dolayısıyla A B'den küçüktür. Tablo 7.14 Timestamp'lar ve Sıra Numaraları İkinci örnek bir başadönmeyi göstermektedir. Daha önceki gibi, timestamp'ler aynıdır, dolayısıyla sadece sıra numaraları önemlidir. Normal aritmetikte 4,294,940,790 (0xFFFF9876 'ın desimal karşılığı) 1'den daha büyüktür. Diğer yandan B-A, 2^31'den büyüktür. Sonuç olarak A, B'den büyüktür. Üçüncü örnek farklı timestamp değerlerini göstermektedir, fakat karşılaştırması birinci örnekteki gibi basittir. B, A'dan daha büyük bir timestamp'e sahip olduğundan, sıra numaralarına bakmaksızın A, B'den büyüktür denilebilir. Son satır timestamp'in sıra numarasında olduğu gibi başa döndüğü durumu göstermektedir. Aynı karşılaştırma kuralı burada da geçerlidir. Bu örnekte, A'nin timestamp'ı ile B'ninki arasındaki fark 2^31 'den daha büyüktür. Dolayısıyla A, B'den büyüktür. Yine, timestamp'lar farklı olduğundan sıra numaraları önemsizdir. Flow Control (Akış Kontrol) TCP, sıra numaralarını paketleri sıraya dizmekten başka işlerde de kullanır. Sıra numaraları TCP'nin akış kontrolünde anahtar elemandır. Akış kontrolüyle, sistem karşısındaki sistemin göndermiş olduğu paketleri düzene sokar. Böyle bir düzenleme yerel sistemin kabul edebileceğinden daha fazla veri gönderilmesini engeller. TCP akış kontrolü iletim penceresinin bölünmesi esasına dayanır. Acknowledgment numarası taşıyan her paketle birlikte TCP aynı zamanda bir pencere boyutu içerir. Bu iki sayı sistemin kabul edebileceği veri sınırını belirler. Örneğin, Şekil 7.32'deki TCP paketini gözönünde bulunduralım. Bu paket 1,000'den 2,023'e kadar (1,024 byte) bir pencere sunmaktadır. Bu acknowledgment'ı alan sistem 22

23 bu değerleri kullanarak ne kadar veri yollayabileceğini hesaplar. Aşağıdaki tartışmada gönderenin veri göndermek isteyen bir host olduğuna dikkat edilmelidir. Bu, Şekil 7.32' deki acknowledgment'ı yollayan host değildir. Şekil 7.32 Örnek akış kontrol penceresi Gönderen, 1,000 'den küçük byte numarasına sahip verinin iletilmesinin gereksiz olduğunu bilmektedir, çünkü alıcı bu veriyi çoktan almıştır. Daha da ötesinde, karşıdaki sistem 2,023 numaralı byte'ın ötesinde bir veri gönderemez. Böyle bir veri pencerenin dışında kalır ve alıcı bunu görmezden gelir. Akış kontrolünün sağlanması için TCP herbir bağlantıda üç ayrı değişken tutar. Bu değişkenler TCP'nin ne kadar veri yollayabileceğini ayarlar. Bu üç değer yollanan fakat onaylanmamış olan son veri (SndUna), bir sonra gönderilecek olan yeni veri (SndNxt), ve pencerenin sınırıdır (SndUna+SndWnd). Ortadeğer SndWnd, alınan son acknowledgment ile belirlendiği gibi gönderenin pencereyi görüşüdür. Şekil 7.33 'ün gösterdiği gibi, bu değerler gönderenin sıra numarası boşluğunu dört bölgeye böler. Bu şekil, Şekil 7.32 'daki acknowledgment'in kabul edilmesinden hemen sonra gönderenin durumunu göstermektedir. Bu noktada en son alınan acknowledgment 1,000'dir ve pencerenin üst limiti 2,023'tür. Gri bölgeler sınırların dışını göstermektedir. Bunlar daha önce kabul edilmiş veriyi veya pencere akış kontrolünün dışında olan veriyi temsil etmektedir. Şekil 7.33 Gönderenin sıra numaraları Acknowledgment and Retransmission (Onay ve Yeniden İletim) Son iki kısım sıra numaralarının verinin sırasının saklanmasına nasıl yardım ettiğini ve akışının nasıl ayarlandığını açıklamaktadır. Sıra numaraları aynı zamanda TCP'de veri ulaşımını güvenli kılmanın anahtarıdır. TCP yolladığı verilere ilişkin onay numarasını karşısındaki sistemden bekler, ve eğer gerekliyse, bu onay gelene kadar veriyi yeniden yollamaya devam eder. TCP uygulama verisi taşıyan bir paket aldığı zaman, bu verinin ne kadarının geçerli olduğuna karar vermek zorundadır. Geçerli veri sistemin akış kontrol penceresini dolduran veridir. Bunu gerçekleştirebilmek için TCP her bağlantı için tutmuş olduğu iki değişkeni kullanır. Bu değişkenler -bir sonra beklenen byte (RcvNxt) ve akış kontrol sınırı (TcvNxt+RcvWnd)- alıcının sıra numarası boşluğunu üç parçaya böler. (RcvWnd, gönderenin SndWnd'sinin alıcıdaki karşılığıdır; alıcının belirttiği son penceredir) Şekil 7.34, Şekil 7.32 'deki paketi gönderen bir sistemin perspektifini çizmektedir. Bu pakette acknowledgment numarası 1,000'dir ve akış kontrol sınırı 2,024'tür. Daha önce olduğu gibi, gri alanlar geçersiz veriyi temsil etmektedir. Soldaki veri çoktan alınmıştır, sağdaki veri ise akış kontrol penceresi sınırının dışına çıkmaktadır. 23

24 Şekil 7.34 Alıcının sıra numaraları Sistem bir paket aldığında, bu paketi onun doğruluğunu belirleyen bir takım testlere tabi tutar. Tablo 7.15 bu testleri özetlemektedir. (Bu tabloda SegSeq paketteki verinin ilk byte'ının sıra numarasıdır ve SegLen paketteki verinin miktarıdır.) En ilginç durum (ve en sık görüleni) tabloda en son görülen durumdur. Burada, yere sistem sıfırdan farklı bir pencere belirtmiş, ve uygulama verisi taşıyan bir paket almıştır. Tabloda görüldüğü gibi, TCP alınan veriye iki test uygular. Birincisi verinin başlangıcının pencerenin içinde yer alıp almadığını kontrol edilmesi, ikincisi de aynı kontrolün verinin sonu için yapılmasıdır. Bu testlerden birinden geçildiği taktirde, en azından verinin bir kısmı geçerli demektir. TCP verinin geçerli kısmını kabul etmek ve işlemek zorundadır. TCP en son onaylanan numaradan sonra gelen bir veri aldığında, karşısındaki sisteme göndereceği paketlerde kullanacağı acknowledgment numarasını günceller. Eğer son acknowledgment ve yeni veri arasında bir boşluk varsa, o zaman acknowledgment numarası ilerye gidemez. Aslında, bu durumda, TCP verisini karşısındaki uygulamaya ulaştıramaz. Tablo 7.15 Alınan Verinin Doğruluğunun Test Edilmesi TCP karşısındaki sisteme bir acknowledgment gönderdiği zaman, bu pakette normalde bir timestamp opsiyonu içermesi beklenir. (Sistemler bağlantı kurulumu sırasında bu opsiyon konusunda henüz anlaşmadıklarından bu paket timestamp içermez.) Bu opsyion alınan pakette timestamp'in bir kopyasını içerir. Çoğu durumda hangi değerin kopya olarak kullanılacağı açıktır. TCP en son alınan paketteki timestamp değerini kopyalar. Diğer yandan bazı durumlarda bu karışıklığa neden olabilir. Timestamp opsiyonunu mümkün olduğunca kullanışlı yapabilmek için TCP, hangi değerin kopyalanacağını belirten detaylı kurallara sahiptir. Bu kurallar TCP'nin ek olarak her bağlantı için iki değişken daha tutmasını gerektirirler. İlk değer normal olarak en son alınan timestamp değeridir. Bu TSRecent olarak kısaltılmaktadır. Bu değer timestamp opsiyonunda göndereceği değerdir. İkinci değer ise en son gönderilen acknowledgment değeridir (LastAck). Genelde bu byte bir sonra beklenen byte (RcvNxt) ile aynıdır, fakat bazı TCP'ler her paketin hemen onaylanmasını tercih etmemektedirler. Sistem bir paket aldığı zaman aşağıdaki testi uygular. SegSeq paketin sıra numarasıdır, ve SegLen' de uzunluğudur. SegSeq LastAck < SegSeq + SegLen Why Complicate Timestamp Echoes (Timestamp Kopyalarındaki Karışıklığın Sebebi) LastAck ve TSRecent değerlerini izlemek timestamp kopyaları için karışık gibi gözükebilir. Diğer yandan böyle bir davranış alışık olunmayan üç durum için yararlıdır. Bu durumlar geciken onay paketleri, kayıp paketler ve kurtarılmış verilerdir. TCP'nin timestamp kopyası stratejisi bu durumlarda bile bağlantının "round-trip" süresinin doğru bir şekilde tahminlenmesini sağlar. 24

25 Eğer LastAck bu aralığın içine düşerse, TCP bu paketin timestamp değerini TSRecent değişkeninde saklar. Bu değer TCP'nin bir sonraki pakette yollayacağı timestamp değeridir. TCP gelen verinin doğruluğunu kontrol ederken, aynı zamanda gelen acknowledgment numarasını da doğrular.bu numaralar karşıdaki sistemin kabul ettiği veriyi belirler. Geçerli ve faydalı olabilmek için, yeni alınan numaranın son alınan numaradan daha büyük olması gerekmektedir. (Eğer acknowledgment numarası bir önceki paketin aynısı ise, paketin kendisi hala geçerli olabilir ancak acknowledgment numarası faydalı bir bilgi taşımaz.) Dahası, acknowledgment numarası yollanması planlanan bir sonraki byte'tan daha büyük olamaz. Böyle olduğu bir durum henüz yollanmamış bir verinin onaylanması demektir ki bu da imkansızdır. Acknowledgment numaralarının maksatlı olarak arka arkaya yollanması yeniden iletimdir. Bu şekilde onaylanmış verinin izini tutmanın amacı onaylanmamış verileri belirlemektir. TCP güvenilir bir haberleşme sağladığından, kayıp verileri yeniden yollamak zorundadır. Yeniden iletim stratejisini belirleyen bir çok faktör vardır. Sistem yeniden iletimden önce ne kadar süre bekleyecektir? Kayıp verinin ne kadarını sistem bir seferde yollayacaktır? Sistem veriyi yeniden yollamayı ne kadar tekrarlayacaktır? Bu sorulara verilecek cevapların sistem ve ağ performansı üzerinde önemli etkisi verdır. Sonuç olarak bu konular ağ araştırmalarının aktif bir alanıdır. Diğer yandan TCP standartı özel bir strateji gerektirmez. (Sadece bir kısmı şu anda kullanılmayan bazı yol gösterici kurallar önermektedir.) Standart, yeniden iletimi yerel uygulamaya bıraktığından bu bölümün kapsamı dışında bırakılmıştır. Bu konular uygulama üzerine olan bir sonraki bölüme ertelenmiştir. Urgent Data (Acil Veri) Eğer haberleşme sırasında uygulamanın karşısındakine acil bir veri gönderme ihtiyacı olursa, TCP bunun için bir mekanizma sağlamaktadır. Uygulama verisini gönderirken bunun acil olduğuna dair bir işaret verir. TCP acil verinin nerede sona erdiğini hatırlar ve onun yerini TCP başlığındaki acil göstergesi ile karşısındaki sisteme taşır. Karşıdaki TCP, bu aciliyeti ilgili uygulamaya bildirir. Aciliyeti belirtmekten öte TCP bu acil veriye başka herhangi bir işlemde bulunmaz, veriyi normal sırasında alıcıya ulaştırır. Diğer yandan TCP uygulamaya beklemekte olan acil bir veri olduğunu haber verir. Uygulamada bunun sonucu olarak acil veriyi diğer verilerden önce işleme alır. Closing Connections (Bağlantıların Sonlandırılması) Ugyulamalar karşılıklı veri transferine artık ihtiyaçları kalmadıkları zaman bağlantılarını sona erdirmek isteyebilirler. Bazı açılardan bağlantı sonlandırılması bağlantı kurulumuna benzemektedir. Her iki tarafta bu konuda hemfikir olmalıdır ve yine TCP paketlerinin değişimine ihtiyaç vardır. Bunun dışında tek sistemin kapatma işlemini başlattığı normal kapama ve heriki sistemin sona erdirme işlemini başlattığı aynı anda kapama vardır. Bağlantı kurulumunda kullanılan bit TCP kontrol alanındaki SYN biti iken, bağlantının sona erdirilmesinde kullanılan bit ise FIN (short for finish) 'dir. Bir sistem yollamak istediği tüm verileri göndermeyi bitirdikten sonra FIN biti set edilmiş bir TCP paketi yollar. Şekil 7.35 bu paketle yapılan bir normal sonlandırmayı göstermektedir. SYN biti gibi, FIN bitine de son gönderilen veri byte'ının numarasından daha büyük olan sanal bir sıra numarası verilir. Böylece, kişisel bilgisayar bir FIN paketi yarattığında, FIN biti efektif olarak 1,001 sıra numarasına sahiptir. (Her zaman olduğu gibi, sıra numarası alanı uygulama verisine bağlıdır. Şekil, hiç bir paketin uygulama verisi taşımadığını varsaymaktadır.) Karşı sistem FIN paketini onaylayarak karşılık verir. Şeklin de gösterdiği gibi, workstation acknowledgment numarasını FIN bitine göre değiştirir. Aynı zamanda, workstation'un TCP'si uygulamayı bu olaydan haberdar eder, ve uygulamadan bağlantının kapatıldığına dair bir onay bekler. Bu onay ile birlikte workstation FIN paketini yollar, ve bunun karşı taraftan onaylanmasını bekler. Yine FIN biti bir acknowledgment numarasına sahiptir ve PC son onay paketinde bu numarayı kullanır. Paket değişimi sona erdiğinde, iki sistem de bağlantıyı yok etmede farklı bir yaklaşım izlerler. Worstation bunu PC'den son onayı alır almaz yapar. PC ise bunu kısa bir peryodtan sonra yapar. Bunu yapmasındaki amacı sonlandırılan bağlantıya ait ağ üzerinde hala paket olması ihtimalidir. Daha özel bir durum olarak, PC workstation'dan bir başka FIN paketi alabilir. Bu eğer PC'nin onay paketi kaybolmuşsa ve workstation FIN paketini yeniden yollamışsa meydana gelir. Böyle bir durumda, kişisel bilgisayar bir başka acknowledgment ile cevap vermeli ve gecikme zamanlayıcısını (delay timer) yeniden başlatmalıdır. Aynı anda katma her iki sistemde işlemi aynı anda başlattıysa gerçekleşir. Şekil 7.36'da gösterildiği gibi her iki sistemde FIN paketini yollarlar, ve her biri diğerini onaylar. Bu durumda iki sistem de bağlantıyı silmek için beklemelidirler. 25

Bölüm 12: UDP ve TCP. 12.1 UDP (User Datagram Protocol)

Bölüm 12: UDP ve TCP. 12.1 UDP (User Datagram Protocol) Bölüm 12: UDP ve TCP Türkçe (İngilizce) karşılıklar Bağlantısız (connectionless) Connection-oriented (bağlantı temelli) Veri dizisi (data stream) Soket (socket) Alındı (acknowledgment) Üç yollu el sıkışma

Detaylı

TRANSPORT KATMANI. Akış kontrolu yapar. Bütün bu işlevleri yerine getiren protokollerden önemlileri şunlardır: 1 *TCP, * UDP, *SPX

TRANSPORT KATMANI. Akış kontrolu yapar. Bütün bu işlevleri yerine getiren protokollerden önemlileri şunlardır: 1 *TCP, * UDP, *SPX TRANSPORT KATMANI İki bilgisayardaki uygulamalar arasındaki iletişimin sağlanması bu katman mekanizmalarıyla olur. Bu katman iletişim kurmak isteyen bilgisayarların sanal olarak iletişim kurmalarını, bu

Detaylı

OSI REFERANS MODELI-II

OSI REFERANS MODELI-II OSI REFERANS MODELI-II Ö Ğ R. G Ö R. V O L K A N A L T ı N T A Ş OSI REFERANS MODELI VERİBAĞı KATMANI Veri hattı katmanında, fiziksel katmanda elektronik medyanın üzerinde verilerin nasıl iletileceği ve

Detaylı

Bilgisayar Programcılığı

Bilgisayar Programcılığı Bilgisayar Programcılığı Uzaktan Eğitim Programı e-bġlg 121 AĞ TEKNOLOJĠLERĠNĠN TEMELLERĠ Öğr. Gör. Bekir Güler E-mail: bguler@fatih.edu.tr Hafta 5: Ağ (Network) katmanı I 4. 1 Giriş 4.2 Sanal devre (virtual

Detaylı

Bölüm 5 İletim(Transport) Katmanı

Bölüm 5 İletim(Transport) Katmanı Bölüm 5 İletim(Transport) Katmanı Oturum katmanından veriyi alıp, ihtiyaç duyulduğunda küçük bileşenlere ayırıp ağ katmanına geçirerek, diğer uca bu parçaların doğru bir şekilde ulaştığına emin olmak Normal

Detaylı

Bölüm 28 ve 29 : İstemci Sunucu Etkileşimi ve Soket API sine Giriş. Internet Protokolleri ve Ağ Uygulamaları. Internet Protokolleri Üzerinden İletişim

Bölüm 28 ve 29 : İstemci Sunucu Etkileşimi ve Soket API sine Giriş. Internet Protokolleri ve Ağ Uygulamaları. Internet Protokolleri Üzerinden İletişim Bölüm 28 ve 29 : İstemci Sunucu Etkileşimi ve Soket API sine Giriş Kaynak : Douglas E. Comer, Computer Networks and Internets With Internet Applications, 4. Baskı, 2004, Prentice Hall Hazırlayan : Tacettin

Detaylı

Kontrol Đşaretleşmesi

Kontrol Đşaretleşmesi Kontrol Đşaretleşmesi Dinamik değişken yönlendirme, çağrıların kurulması, sonlandırılması gibi ağ fonksiyonlarının gerçekleştirilmesi için kontrol bilgilerinin anahtarlama noktaları arasında dağıtılması

Detaylı

Bölüm3 Taşıma Katmanı. Transport Layer 3-1

Bölüm3 Taşıma Katmanı. Transport Layer 3-1 Bölüm3 Taşıma Katmanı Transport Layer 3-1 Bölüm 3: Taşıma Katmanı Amaç: Taşıma katmanı servisleri arkasındaki prensipleri anlamak multiplexing/ demultiplexing (çoklama) Güvenilir data transferi Akış kontrolü

Detaylı

AĞ HİZMETLERİ. Öğr.Gör.Volkan ALTINTAŞ. Version 4.0

AĞ HİZMETLERİ. Öğr.Gör.Volkan ALTINTAŞ. Version 4.0 AĞ HİZMETLERİ Öğr.Gör.Volkan ALTINTAŞ Version 4.0 İSTEMCİ SUNUCU İLİŞKİSİ İnsanlar her gün başkalarıyla iletişim kurmak ve rutin görevlerini yerine getirmek için ağ ve İnternet üzerinden sağlanan hizmetleri

Detaylı

Görsel Programlama DERS 12. Görsel Programlama - Ders12/

Görsel Programlama DERS 12. Görsel Programlama - Ders12/ Görsel Programlama DERS 12 1 Java Ağ İşlemleri (Java Networking) Birbirleri ile ağ araçları ve kabloları ile bağlantılı bilgisayarlar bir ağ sistemi oluştururlar. İnternet, şirketlerin yerel bilgisayar

Detaylı

Computer Networks 5. Öğr. Gör. Yeşim AKTAŞ Bilgisayar Mühendisliği A.B.D.

Computer Networks 5. Öğr. Gör. Yeşim AKTAŞ Bilgisayar Mühendisliği A.B.D. Computer Networks 5 Öğr. Gör. Yeşim AKTAŞ Bilgisayar Mühendisliği A.B.D. TCP/IP Modeli TCP/IP, günümüzde en yaygın olarak kullanılan protokol takımıdır ve TCP/IP protokol yığınına (TCP/IP stack) gömülü,

Detaylı

BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI

BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI ITS-101A INTERNET EĞİTİM SİSTEMİ TCP/IP ICMP Ping ve Checksum İstanbul Ticaret Üniversitesi Bilgisayar Mühendisliği Bölümü Araş. Gör. Can EYÜPOĞLU ICMP Ping ve Checksum

Detaylı

Bilgisayar Ağları Computer Networks

Bilgisayar Ağları Computer Networks Bilgisayar Ağları Computer Networks Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Bu dersin sunumları, James Kurose, Keith Ross, Computer Networking: A Top-Down Approach 6/e,

Detaylı

Toplu İleti Gönderimi

Toplu İleti Gönderimi Toplu İleti Gönderimi İK ve Bordro Plus ürünlerinde; personelin doğum günü, işe giriş kutlaması gibi özel tarihlerde çalışanlara e-posta ile kutlama mesajları otomatik olarak gönderilebilir. Bu işlem Sicil

Detaylı

BM 402 Bilgisayar Ağları (Computer Networks)

BM 402 Bilgisayar Ağları (Computer Networks) BM 402 Bilgisayar Ağları (Computer Networks) M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Not: Bu dersin sunumları, ders kitabının yazarları James F. Kurose ve Keith W. Ross tarafından

Detaylı

Elbistan Meslek Yüksek Okulu 2013 2014 GÜZ Yarıyılı. 17-18 Ara. 2013 Salı, Çarşamba Öğr. Gör. Murat KEÇECĠOĞLU

Elbistan Meslek Yüksek Okulu 2013 2014 GÜZ Yarıyılı. 17-18 Ara. 2013 Salı, Çarşamba Öğr. Gör. Murat KEÇECĠOĞLU Elbistan Meslek Yüksek Okulu 2013 2014 GÜZ Yarıyılı 17-18 Ara. 2013 Salı, Çarşamba Öğr. Gör. Murat KEÇECĠOĞLU Aktarım katmanında TCP ve olmak üzere iki protokol kullanılır. iletiminde sağlama yapılmadığı

Detaylı

İletişim Ağları Communication Networks

İletişim Ağları Communication Networks İletişim Ağları Communication Networks Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Bu dersin sunumları, James Kurose, Keith Ross, Computer Networking: A Top-Down Approach

Detaylı

TCP/IP. TCP (Transmission Control Protocol) Paketlerin iletimi. IP (Internet Protocol) Paketlerin yönlendirmesi TCP / IP

TCP/IP. TCP (Transmission Control Protocol) Paketlerin iletimi. IP (Internet Protocol) Paketlerin yönlendirmesi TCP / IP 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 yapılır. Türkiye de ise bunu ODTÜ-TUBİTAK yapmaktadır.

Detaylı

Internet in Kısa Tarihçesi

Internet in Kısa Tarihçesi TCP/IP Internet in Kısa Tarihçesi İlk geniş alan ağı olan ARPANET 1960 lı yılların ortasında askeri amaçlarla ortaya çıktı. Problem: Nükleer bir savaş esnasında telefon hatlarının çoğunun tahrip olması

Detaylı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı HAFTA VI Elbistan Meslek Yüksek Okulu 2016 2017 Güz Yarıyılı DoD / Deparment of Defence TCP/IP protokol grubunun referans aldığı DoD modeli 4 ayrı katmandan oluşur. Ağ Arayüz Katmanı İnternet Katmanı Aktarım

Detaylı

Bilgisayar Sistemleri ilk ortaya çıktığında...

Bilgisayar Sistemleri ilk ortaya çıktığında... Bilgisayar Ağları Bilgisayar Sistemleri ilk ortaya çıktığında... Merkezi yapıya sahip ENIAC (1945) ~167 m² 30 ton IBM 650 (1960) K.G.M Dk.da ~ 74000 işlem 12 yıl kullanılmıştır http://the eniac.com www.kgm.gov.tr

Detaylı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı HAFTA VIII Elbistan Meslek Yüksek Okulu 2016 2017 Güz Yarıyılı Internet Katmanı Protokolleri Internet Katmanı Protokolleri 4 protokolden oluşur. IP (Internet Protokol) Protokolü İnternet Kontrol Mesaj

Detaylı

MCR02-AE Ethernet Temassız Kart Okuyucu

MCR02-AE Ethernet Temassız Kart Okuyucu MCR02-AE Ethernet Temassız Kart Okuyucu Teknik Özellikleri Ethernet 10BaseT Dahili TCP/IP Stack TCP/IP Client-Server Bağlantı Özelliği Dahili DNS İstemcisi DHCP veya Statik IP ile çalışabilme UDP, TCP,ARP,ICMP(ping)

Detaylı

Bölüm 2 : ANAHTARLAMA : DEVRE ANAHTARLAMA. MESAJ ANAHTARLAMA. PAKET ANAHTARLAMA.

Bölüm 2 : ANAHTARLAMA : DEVRE ANAHTARLAMA. MESAJ ANAHTARLAMA. PAKET ANAHTARLAMA. Bölüm 2 : ANAHTARLAMA : DEVRE ANAHTARLAMA. MESAJ ANAHTARLAMA. PAKET ANAHTARLAMA. Türkçe (İngilizce) karşılıklar Devre Anahtarlama (circuit switching) Mesaj Anahtarlama (message switching) Paket Anahtarlama

Detaylı

BLGM 344 DENEY 3 * AĞ PROGRAMLAMAYA GİRİŞ

BLGM 344 DENEY 3 * AĞ PROGRAMLAMAYA GİRİŞ BLGM 344 DENEY 3 * AĞ PROGRAMLAMAYA GİRİŞ Amaçlar 1. TCP protokolünün öğrenilmesi 2. Ağ programlamada kullanacağımız sistem komutlarının öğrenilmesi 3. Ağ programlamanın kavranması TCP ile veri alışverişi

Detaylı

BLGM 343 DENEY 8 * TCP İLE VERİ İLETİŞİMİ

BLGM 343 DENEY 8 * TCP İLE VERİ İLETİŞİMİ BLGM 343 DENEY 8 * TCP İLE VERİ İLETİŞİMİ Amaçlar 1. TCP protokolünün öğrenilmesi 2. Ağ programlamada kullanacağımız sistem komutlarının öğrenilmesi 3. Ağ programlamanın kavranması TCP ile veri alışverişi

Detaylı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı EKi Salı, Perşembe Öğr. Gör. Murat KEÇECĠOĞLU

Elbistan Meslek Yüksek Okulu Güz Yarıyılı EKi Salı, Perşembe Öğr. Gör. Murat KEÇECĠOĞLU Elbistan Meslek Yüksek Okulu 2015 2016 Güz Yarıyılı 22-23 EKi. 2015 Salı, Perşembe Öğr. Gör. Murat KEÇECĠOĞLU OSI modeli sıradüzensel 7 katmandan oluşur. OSI modeli hala geliştirilmekte olmasına rağmen

Detaylı

BIL321 VERİ İLETİŞİMİ LABORATUVARI

BIL321 VERİ İLETİŞİMİ LABORATUVARI BIL321 VERİ İLETİŞİMİ LABORATUVARI ITS-101A INTERNET EĞİTİM SİSTEMİ TCP/IP HATA KONTROLÜ (ERROR CONTROL) İstanbul Ticaret Üniversitesi Bilgisayar Mühendisliği Bölümü Araş. Gör. Can EYÜPOĞLU HATA KONTROLÜ

Detaylı

DOD / DEPARMENT OF DEFENCE

DOD / DEPARMENT OF DEFENCE DOD / DEPARMENT OF DEFENCE TCP/IP protokol grubunun referans aldığı DoD modeli 4 ayrı katmandan oluşur. Ağ Arayüz Katmanı İnternet Katmanı Aktarım Katmanı Uygulama Katmanı DoD / Deparment of Defence Ağ

Detaylı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı HAFTA IV Elbistan Meslek Yüksek Okulu 2016 2017 Güz Yarıyılı Open System Interconnection (OSI) OSI modeli sıradüzensel 7 katmandan oluşur. OSI modeli hala geliştirilmekte olmasına rağmen satıcılar ve standart

Detaylı

F frame prop acl. F frame. 1.1 Dur ve bekle (stop & wait) kullanım oranı. 1 = olarak ifade edilebilecektir. a = dersek; L R.

F frame prop acl. F frame. 1.1 Dur ve bekle (stop & wait) kullanım oranı. 1 = olarak ifade edilebilecektir. a = dersek; L R. 1.1 Dur ve bekle (sop & wai) kullanım oranı Herhangi bir akış konrol ekniğinin ne derece ekin olduğunu ölçebilmek üzere ha kullanım oranının incelenmesi gereklidir. Dur ve bekle akış konrol ekniğinde haın

Detaylı

Bölüm 28 ve 29 : İstemci Sunucu Etkileşimi ve Soket API sine Giriş

Bölüm 28 ve 29 : İstemci Sunucu Etkileşimi ve Soket API sine Giriş Bölüm 28 ve 29 : İstemci Sunucu Etkileşimi ve Soket API sine Giriş Kaynak : Douglas E. Comer, Computer Networks and Internets With Internet Applications, 4. Baskı, 2004, Prentice Hall Hazırlayan : Tacettin

Detaylı

Veri İletişimi Data Communications

Veri İletişimi Data Communications Veri İletişimi Data Communications Suat ÖZDEMİR Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü 12. Çoklu Erişim Çoklu Erişim İletişimde bulunan uç noktalar arasında her zaman atanmış bir kanal bulunmayabilir

Detaylı

Wireshark Lab: TCP and UDP

Wireshark Lab: TCP and UDP Wireshark Lab: TCP and UDP Supplement to Computer Networking: A Top-Down Approach, 6 th ed., J.F. Kurose and K.W. Ross Tell me and I forget. Show me and I remember. Involve me and I understand. Chinese

Detaylı

Şekil 9.1 IP paket yapısı

Şekil 9.1 IP paket yapısı Bölüm 9 : IP PAKET YAPISI ve IP ADRESLEME Türkçe (İngilizce) karşılıklar Satır (word in IP) Tanıtıcı (identification) Parça no (Fragment offset) Yaşam süresi (Time-to-live) Başlık sınaması (Header checksum)

Detaylı

Tarzan: A Peer-to-Peer Anonymizing Network Layer 1 EMRE YESĐRCĐ 2 KONULAR Giriş Anonimlik Nedir? Tasarım ve Hedefler Kural Tanımı Kodlama Sonuç 3 Giriş Tarzan her düğümünde bir karıştırıcı olan bir peer

Detaylı

Bölüm 28 ve 29 : İstemci Sunucu Etkileşimi ve Soket API sine Giriş. Internet Protokolleri ve Ağ Uygulamaları. Internet Protokolleri Üzerinden İletişim

Bölüm 28 ve 29 : İstemci Sunucu Etkileşimi ve Soket API sine Giriş. Internet Protokolleri ve Ağ Uygulamaları. Internet Protokolleri Üzerinden İletişim Bölüm 28 29 : İstemci Sunucu Etkileşimi Soket API sine Giriş Kaynak : Douglas E. Comer, Computer Networks and Internets With Internet Applications, 4. Baskı, 2004, Prentice Hall Hazırlayan : Tacettin Ayar

Detaylı

ETHERNET TEKNOLOJİSİ

ETHERNET TEKNOLOJİSİ ETHERNET TEKNOLOJİSİ ETHERNET TEKNOLOJİSİ İletişim, bir mesajın bir kanal aracılığıyla kaynaktan hedefe ulaştırılması işlemidir. Gerek insanlar arasında gerçekleşsin gerekse de bilgisayarlar arasında gerçekleşsin

Detaylı

Öğr. Gör. Ümit ATİLA

Öğr. Gör. Ümit ATİLA Öğr. Gör. Ümit ATİLA Internette her bilgisayarın bir IP (ınternet protokol) adresi vardır. Bir bilgisayarın IP adresi varsa internet üzerindeki tüm bilgisayarlar bu adresi kolayca bulabilir. Ancak bu rakamları

Detaylı

SERNET ET485CAS x2 RS485/RS422 Seri Kanal Sunucu KULLANICI KILAVUZU. Telif Hakkı Uyarısı. >>> Otomasyon Ürünleri

SERNET ET485CAS x2 RS485/RS422 Seri Kanal Sunucu KULLANICI KILAVUZU. Telif Hakkı Uyarısı. >>> Otomasyon Ürünleri SERNET ET485CAS x2 RS485/RS422 Seri Kanal Sunucu KULLANICI KILAVUZU Telif Hakkı Uyarısı Bu doküman Argenom Elektronik tarafından hazırlanmıştır. Tüm hakları saklıdır. SERNET tescilli bir Argenom Elektronik

Detaylı

Internetin Yapı Taşları

Internetin Yapı Taşları Internetin Yapı Taşları Ali Erdinç Köroğlu III. Linux ve Özgür Yazılım Şenliği 13 Mayıs 200 Milli Kütüphane - Ankara Internetin Yapı Taşları OSI Katmanı TCP Katmanı IP Katmanı IP Adresleme IP Sınıfları

Detaylı

Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı Kas Salı, Çarşamba Öğr. Gör. Murat KEÇECĠOĞLU

Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı Kas Salı, Çarşamba Öğr. Gör. Murat KEÇECĠOĞLU Elbistan Meslek Yüksek Okulu 2013 2014 GÜZ Yarıyılı 05-06 Kas. 2013 Salı, Çarşamba Öğr. Gör. Murat KEÇECĠOĞLU DoD / Deparment of Defence TCP/IP protokol grubunun referans aldığı DoD modeli 4 ayrı katmandan

Detaylı

DM-501 Tak-Çalıştır GPRS-UART Köprüsü

DM-501 Tak-Çalıştır GPRS-UART Köprüsü DM-501 Tak-Çalıştır GPRS-UART Köprüsü Temel Bilgiler TCP 2 nokta arası bağlantı + veri akışı sağlar Oturum açmaya dayalıdır Arka planda hata kontrolü ve paketin sağlıklı iletim kontrolü (ACK) yürütür TCP

Detaylı

MODBUS PROTOKOLÜ ÜZERİNDEN KABLOLU VE KABLOSUZ ENERJİ İZLEME SİSTEMİ

MODBUS PROTOKOLÜ ÜZERİNDEN KABLOLU VE KABLOSUZ ENERJİ İZLEME SİSTEMİ MODBUS PROTOKOLÜ ÜZERİNDEN KABLOLU VE KABLOSUZ ENERJİ İZLEME SİSTEMİ 192.168.1.0 Networkunda çalışan izleme sistemi PC Eth, TCP/IP Cihaz 1, Cihaz 2, Şekil-1 U 200 Şekil-1 deki örnek konfigürasyonda standart

Detaylı

Saldırı Tespit ve Engelleme Sistemleri Eğitimi Ön Hazırlık Soruları

Saldırı Tespit ve Engelleme Sistemleri Eğitimi Ön Hazırlık Soruları Saldırı Tespit ve Engelleme Sistemleri Eğitimi Ön Hazırlık Soruları 1. MAC adresleri kaç byte dır? 2. Aşağıdaki MAC adresi hangi firmaya aittir. 00:03:6C:1c:2c:3d 3. TCP SYN paketi kaç byte dır? 4. 100

Detaylı

CENG 362 Computer Networks (2005) Midterm Exam 1 Çözümleri

CENG 362 Computer Networks (2005) Midterm Exam 1 Çözümleri CENG 362 Computer Networks (2005) Midterm Exam 1 Çözümleri 1. (20 puan) (Hepsi doğru cevaplanırsa 25 puan) Aşağıda verilen her bir ifade için D (Doğru) veya (anlış) şıklarından birini işaretleyin. Doğru

Detaylı

VERĠ HABERLEġMESĠ OSI REFERANS MODELĠ

VERĠ HABERLEġMESĠ OSI REFERANS MODELĠ VERĠ HABERLEġMESĠ OSI REFERANS MODELĠ Bölüm-2 Resul DAġ rdas@firat.edu.tr VERİ HABERLEŞMESİ TEMELLERİ Veri İletişimi İletişimin Genel Modeli OSI Referans Modeli OSI Modeli ile TCP/IP Modelinin Karşılaştırılması

Detaylı

MS WORD 5. BÖLÜM. Şekil 3. 100. Sayfa Düzeni Sekmesi. Şekil 3. 101. Temalar Grubu

MS WORD 5. BÖLÜM. Şekil 3. 100. Sayfa Düzeni Sekmesi. Şekil 3. 101. Temalar Grubu MS WORD 5. BÖLÜM Bölüm Adı: SAYFA DÜZENİ Bölümün Amacı: Sayfa yapısı ve düzenini değiştirmek. Neler Öğreneceksiniz? Bu bölümü bitiren kişi: 1. Ofis temalarını bilir. 2. Kenar boşluklarını, sayfa yönlendirmesini,

Detaylı

Ağ Temelleri Semineri. erbil KARAMAN

Ağ Temelleri Semineri. erbil KARAMAN Ağ Temelleri Semineri erbil KARAMAN Gündem 1. 1. İnternet 2. 2. TCP // IP IP 3. 3. Ağ Analizi 4. 4. Ağ Güvenliği internet Yeni Varoluş Habitatı Bilgi Hız Özgürlük Dönüşüm iletişim Alış Veriş İnternet bağlantısı

Detaylı

Prensipler Çoklu ortam uygulamalarının sınıflandırılması Uygulamaların ihtiyaç duyacağı ağ servislerini belirlemek Uygulamaların gerçek zamanlı

Prensipler Çoklu ortam uygulamalarının sınıflandırılması Uygulamaların ihtiyaç duyacağı ağ servislerini belirlemek Uygulamaların gerçek zamanlı İrfan Köprücü Prensipler Çoklu ortam uygulamalarının sınıflandırılması Uygulamaların ihtiyaç duyacağı ağ servislerini belirlemek Uygulamaların gerçek zamanlı olmasından dolayı ayrılan yüksek önceliklerden

Detaylı

ELN1001 BİLGİSAYAR PROGRAMLAMA I

ELN1001 BİLGİSAYAR PROGRAMLAMA I ELN1001 BİLGİSAYAR PROGRAMLAMA I DEPOLAMA SINIFLARI DEĞİŞKEN MENZİLLERİ YİNELEMELİ FONKSİYONLAR Depolama Sınıfları Tanıtıcılar için şu ana kadar görülmüş olan özellikler: Ad Tip Boyut Değer Bunlara ilave

Detaylı

Bilgisayar Programcılığı Uzaktan Eğitim Programı. e-bilg 121 AĞ TEKNOLOJİLERİNİN TEMELLERİ Öğr. Gör. Bekir Güler E-mail: bguler@fatih.edu.

Bilgisayar Programcılığı Uzaktan Eğitim Programı. e-bilg 121 AĞ TEKNOLOJİLERİNİN TEMELLERİ Öğr. Gör. Bekir Güler E-mail: bguler@fatih.edu. Bilgisayar Programcılığı Uzaktan Eğitim Programı e-bilg 121 AĞ TEKNOLOJİLERİNİN TEMELLERİ Öğr. Gör. Bekir Güler E-mail: bguler@fatih.edu.tr Hafta 4: Taşıma (Transport) Katmanı 3.1 Taşıma katmanı hizmetleri

Detaylı

Daha komplike uygulamalar elektronik ticaret, elektronik kimlik belgeleme, güvenli e-posta,

Daha komplike uygulamalar elektronik ticaret, elektronik kimlik belgeleme, güvenli e-posta, Çift Anahtarlı (Asimetrik Şifreleme) Bilgi Güvenliği: Elektronik iletişim, günümüzde kağıt üzerinde yazı yazarak yapılan her türlü iletişimin yerine geçmeye adaydır. Çok uzak olmayan bir gelecekte kişi/kuruluş/toplumların,

Detaylı

Hping ile IP, ICMP ve UDP Paketleri Oluşturma

Hping ile IP, ICMP ve UDP Paketleri Oluşturma Hping ile IP, ICMP ve UDP Paketleri Oluşturma Hping -II Huzeyfe ÖNAL 10 Kasım [ Hping yazısının ikinci bölümünde IP, ICMP ve UDP paketlerinin detayları ve hping ile bu protokollere

Detaylı

SERNET ET232CAS x2 RS232 Seri Kanal Sunucu KULLANICI KILAVUZU. Telif Hakkı Uyarısı. >>> Otomasyon Ürünleri www.argenom.com

SERNET ET232CAS x2 RS232 Seri Kanal Sunucu KULLANICI KILAVUZU. Telif Hakkı Uyarısı. >>> Otomasyon Ürünleri www.argenom.com SERNET ET232CAS x2 RS232 Seri Kanal Sunucu KULLANICI KILAVUZU Telif Hakkı Uyarısı Bu doküman Argenom Elektronik tarafından hazırlanmıştır. Tüm hakları saklıdır. SERNET tescilli bir Argenom Elektronik markasıdır.

Detaylı

HACETTEPE ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR AĞLARI LABORATUVARI DENEY 5. Yönlendiricilerde İşlem İzleme ve Hata Ayıklama

HACETTEPE ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR AĞLARI LABORATUVARI DENEY 5. Yönlendiricilerde İşlem İzleme ve Hata Ayıklama HACETTEPE ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR AĞLARI LABORATUVARI DENEY 5 Yönlendiricilerde İşlem İzleme ve Hata Ayıklama Bu deneyde, Laboratuvar görünümü, Çizim 5.1 de gösterilen biçimde

Detaylı

Bilgi ve Olay Yönetim Sistemi

Bilgi ve Olay Yönetim Sistemi 1 Bilgi ve Olay Yönetim Sistemi Kurulum Kılavuzu Ağustos 2017 Versiyon Sürüm 2.2.5 2 İçindekiler Bilgi ve Olay Yönetim Sistemi... 1 1. Sistem Gereksinimleri... 3 2. Kurulum... 3 3. Lisanslama... 7 4. Windows

Detaylı

CP1E-ARGOX AS8000-R SERI PORT HABERLEŞMESİ GENEL BILGI BAĞLANTI ŞEMASI HABERLEŞME AYARLARI RXD KOMUTU HABERLEŞME PROGRAMI

CP1E-ARGOX AS8000-R SERI PORT HABERLEŞMESİ GENEL BILGI BAĞLANTI ŞEMASI HABERLEŞME AYARLARI RXD KOMUTU HABERLEŞME PROGRAMI CP1E-ARGOX AS8000-R SERI PORT HABERLEŞMESİ GENEL BILGI BAĞLANTI ŞEMASI HABERLEŞME AYARLARI RXD KOMUTU HABERLEŞME PROGRAMI Genel Bilgi Bu dökümanda CP1E PLC ile Argox marka barkod okuyucunun seri port üzerinden

Detaylı

Dört genel BASINÇ KALIBRASYONU SORUNU

Dört genel BASINÇ KALIBRASYONU SORUNU Dört genel BASINÇ KALIBRASYONU SORUNU Basınç kalibrasyonu, işlemleri optimize etmeye ve tesis güvenliğini sağlamaya yardımcı olan proses kontrolü sistemleri için genellikle kritik bir faktördür. Basınç

Detaylı

Ağ Nedir? Birden fazla bilgisayarın iletişimini sağlayan printer vb. kaynakları, daha iyi ve ortaklaşa kullanımı sağlayan yapılara denir.

Ağ Nedir? Birden fazla bilgisayarın iletişimini sağlayan printer vb. kaynakları, daha iyi ve ortaklaşa kullanımı sağlayan yapılara denir. TEMEL AĞ TANIMLARI Ağ Nedir? Birden fazla bilgisayarın iletişimini sağlayan printer vb kaynakları, daha iyi ve ortaklaşa kullanımı sağlayan yapılara denir WAN ve LAN Kavramları Bilgisayarlar ve paylaşılan

Detaylı

Bilgisayar Ağları ve Türleri

Bilgisayar Ağları ve Türleri Bilgisayar Ağları ve Türleri Bilgisayar ağı, birbirlerine bağlı ve birbirleri arasında metin, ses, sabit ve hareketli görüntü aktarımı yapabilen bilgisayarların oluşturduğu yapıdır. Ağlar sadece bilgisayarlardan

Detaylı

Fiery seçenekleri 1.3 yardımı (sunucu)

Fiery seçenekleri 1.3 yardımı (sunucu) 2015 Electronics For Imaging. Bu yayın içerisinde yer alan tüm bilgiler, bu ürüne ilişkin Yasal Bildirimler kapsamında korunmaktadır. 29 Ocak 2015 İçindekiler 3 İçindekiler...5 Bir Fiery seçeneğini etkinleştirme...5

Detaylı

BİLGİSAYAR AĞLARI. «Uygulama Katmanı»

BİLGİSAYAR AĞLARI. «Uygulama Katmanı» BİLGİSAYAR AĞLARI «Uygulama Katmanı» İÇİNDEKİLER TCP/IP ve OSI Modeli TCP/IP Modeli Neden TCP/IP Modeli TCP/IP Modeli (Protokolü)Katmanları OSI Modeli Neden OSI Modeli OSI Modeli Katmanları OSI ve TCP

Detaylı

VIDEOCELL API. Versiyon 1.0.0

VIDEOCELL API. Versiyon 1.0.0 VIDEOCELL API Versiyon 1.0.0 İçindekiler 1. Bu Belgenin Amacı... 3 2. Belge Sürümleri... 3 3. Sistem Gereksinimleri... 3 4. Kullanım Şekli... 3 4.1. Genel... 3 4.2. Uyarılar... 3 4.3. Hata Kodları... 4

Detaylı

BIL321 VERİ İLETİŞİMİ LABORATUVARI

BIL321 VERİ İLETİŞİMİ LABORATUVARI BIL321 VERİ İLETİŞİMİ LABORATUVARI ITS-101A INTERNET EĞİTİM SİSTEMİ TCP/IP ETHERNET MESAJI GÖNDERME & GÖZLEMLEME İstanbul Ticaret Üniversitesi Bilgisayar Mühendisliği Bölümü Araş. Gör. Can EYÜPOĞLU ETHERNET

Detaylı

Kurulum; Ana Bilgisayar ve Tahtalara ayrı ayrı yapılmaktadır. KURULUM ŞEMASI x.x x.x x.x x.

Kurulum; Ana Bilgisayar ve Tahtalara ayrı ayrı yapılmaktadır.  KURULUM ŞEMASI x.x x.x x.x x. KURULUM ŞEMASI 192.168.x.x 192.168.x.x 192.168.x.x 192.168.x.x ANA BİLGİSAYAR Kurulum; Ana Bilgisayar ve Tahtalara ayrı ayrı yapılmaktadır. KURULUM SİHİRBAZI adresine girerek aktahta_kur.exe dosyasını

Detaylı

SERNET ET232CAS x2 RS232 Seri Kanal Sunucu KULLANICI KILAVUZU. Telif Hakkı Uyarısı. >>> Otomasyon Ürünleri www.argenom.com

SERNET ET232CAS x2 RS232 Seri Kanal Sunucu KULLANICI KILAVUZU. Telif Hakkı Uyarısı. >>> Otomasyon Ürünleri www.argenom.com SERNET ET232CAS x2 RS232 Seri Kanal Sunucu KULLANICI KILAVUZU Telif Hakkı Uyarısı Bu doküman Argenom Elektronik tarafından hazırlanmıştır. Tüm hakları saklıdır. SERNET tescilli bir Argenom Elektronik markasıdır.

Detaylı

HAFTA-3 ARP (Address Resolution Protocol) (Adres Çözümleme Protokolü)

HAFTA-3 ARP (Address Resolution Protocol) (Adres Çözümleme Protokolü) HAFTA-3 ARP (Address Resolution Protocol) (Adres Çözümleme Protokolü) BİLİNMESİ GEREKEN BAZI DONANIMLAR SWITCH HUB ROUTER HUB-SWITCH Hub ve Switch bilgisayarları birbirleri ile iletişim kurmak ve birbirine

Detaylı

Ağ Protokolleri. Aysel Aksu. Nisan, 2016

Ağ Protokolleri. Aysel Aksu. Nisan, 2016 Ağ Protokolleri Aysel Aksu Nisan, 2016 İçindekiler 1 Giriş................................................ 2 2 AĞ PROTOKOLLERİ....................................... 3 2.1 TCP/IP MİMARİSİ VE KATMANLARI.........................

Detaylı

DİSK DEPOLAMA ALANLARI

DİSK DEPOLAMA ALANLARI DİSK DEPOLAMA ALANLARI 1. Giriş İşlemci hızı ve hafıza kapasitesinin disk hızından çok daha hızlı bir gelişim içinde bulunduğu göz önüne alınırsa, disk kullanımında teorik ilgi ve uygulamanın önemliliği

Detaylı

DOKÜMANLARIN KONTROLÜ PROSEDÜRÜ Doküman No: Yürürlük Tarihi: Revizyon Tarih/No:

DOKÜMANLARIN KONTROLÜ PROSEDÜRÜ Doküman No: Yürürlük Tarihi: Revizyon Tarih/No: 1. AMAÇ Bu prosedürün amacı, İç Kontrol Sistemi içinde bulunan tüm dokümanların hazırlanması, onaylanması, yayını, sürdürülmesi, güncelleştirilmesi ve dağıtım esasları için yöntem ve sorumlulukları belirlemektir.

Detaylı

NB Ekran Seri Port Üzerinden Veri Okuma/Yazma. Genel Bilgi Protokol Oluşturma Veri Okuma Veri Yazma

NB Ekran Seri Port Üzerinden Veri Okuma/Yazma. Genel Bilgi Protokol Oluşturma Veri Okuma Veri Yazma NB Ekran Seri Port Üzerinden Veri Okuma/Yazma Genel Bilgi Protokol Oluşturma Veri Okuma Veri Yazma Genel Bilgi NB Ekranlar üzerinde 2 adet seri port bulunmaktadır. Bu portları kullanarak noprotocol modunda

Detaylı

İleri Düzey Bilgisayar Ağları

İleri Düzey Bilgisayar Ağları İleri Düzey Bilgisayar Ağları Ders 4 İnternet te Tıkanıklık Denetimi Mehmet Demirci 1 Bugün İnternet te ölçekleme Tıkanıklık denetimi 2 IPv4 yetersiz kalıyor Toplam 2 32 4 milyar adres IP adresleri bloklar

Detaylı

EC-100. Ethernet RS232/422/485 Çevirici. İstanbul Yazılım ve Elektronik Teknolojileri

EC-100. Ethernet RS232/422/485 Çevirici. İstanbul Yazılım ve Elektronik Teknolojileri EC-100 Ethernet RS232/422/485 Çevirici İstanbul Yazılım ve Elektronik Teknolojileri EC-100, cihazlarınıza veya bilgisayara RS232/422/485 hattından bağlayarak kullanabileceğiniz tak-kullan şeklinde tasarlanmış

Detaylı

Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü. Bilgisayar Ağları Dersi Lab. 2. İçerik. IP ICMP MAC Tracert

Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü. Bilgisayar Ağları Dersi Lab. 2. İçerik. IP ICMP MAC Tracert Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Bilgisayar Ağları Dersi Lab. 2 İçerik IP ICMP MAC Tracert 1 IP Protokolü Ağ katmanı paketlerin kaynaktan hedefe ulaşmasından sorumludur.

Detaylı

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı Ders 7 LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ 1 LINUX Yapısı LINUX işletim sisteminin diğer işletim sistemleri gibi kendine özgü bir yapısı vardır. LINUX yapısı ve bileşenleri aşağıdaki

Detaylı

İTÜ Bilgisayar Mühendisliği Bölümü, BLG433-Bilgisayar Haberleşmesi ders notları, Dr. Sema Oktuğ

İTÜ Bilgisayar Mühendisliği Bölümü, BLG433-Bilgisayar Haberleşmesi ders notları, Dr. Sema Oktuğ Bölüm 3 : HATA SEZME TEKNİKLERİ Türkçe (İngilizce) karşılıklar Eşlik sınaması (parity check) Eşlik biti (parity bit) Çevrimli fazlalık sınaması (cyclic redundancy check) Sağnak/çoğuşma (burst) Bölüm Hedefi

Detaylı

Scream! e gelen veri akışlarından bazılarını diğer bir kurum yada bilgisayarla paylaşmak için kullanılabilir.

Scream! e gelen veri akışlarından bazılarını diğer bir kurum yada bilgisayarla paylaşmak için kullanılabilir. Eş zamanlı Scream! kullanımı Scream!, sismik ağın güçlü bir parçası olacak şekilde tasarlanmıştır. Varsayılan yapılandırma dosyası scream.ini dir ve ilk kullanım sırasında kendini otomatik olarak oluşturur.

Detaylı

VİOPFIX API ÜYE YAZILIMI SERTİFİKASYON PROGRAMI TEMEL SEVİYE. Temmuz 2015, Sürüm 1.2

VİOPFIX API ÜYE YAZILIMI SERTİFİKASYON PROGRAMI TEMEL SEVİYE. Temmuz 2015, Sürüm 1.2 VİOPFIX API ÜYE YAZILIMI SERTİFİKASYON PROGRAMI TEMEL SEVİYE Temmuz 2015, Sürüm 12 DÖKÜMAN TARİHÇESİ Tarih Versiyon Açıklama Kasım 2014 10 İlk sürüm Sözleşmeler production ortamındaki sözleşmelere göre

Detaylı

Alt Ağ Maskesi (Subnet Mask)

Alt Ağ Maskesi (Subnet Mask) TCP/IP (Devam) Alt Ağ Maskesi (Subnet Mask) Ağdaki iki bilgisayarın veya cihazın aynı ağda olduklarını anlamalarını sağlar. Sınıf IP adres Ağ No Host No Ağ bit sayısı Host bit sayısı Varsayılan Ağ Maskesi

Detaylı

EC-485. Ethernet RS485 Çevirici. İstanbul Yazılım ve Elektronik Teknolojileri

EC-485. Ethernet RS485 Çevirici. İstanbul Yazılım ve Elektronik Teknolojileri EC-485 Ethernet RS485 Çevirici İstanbul Yazılım ve Elektronik Teknolojileri TR+: RS485 TR+ bağlantısı için kullanılır. TR-: RS485 TR- bağlantısı için kullanılır. EC-485, cihazlarınıza veya bilgisayara

Detaylı

FTP ve Güvenlik Duvarları

FTP ve Güvenlik Duvarları FTP ve Güvenlik Duvarları FTP Protokolü FTP, sık kullanılan protokoller(http, SMTP, DNS vs) arasında en sorunlu protokoldür. Diğer protokoller tek bir TCP/UDP portu üzerinden çalışırken FTP birden fazla

Detaylı

Göstericiler (Pointers)

Göstericiler (Pointers) C PROGRAMLAMA Göstericiler (Pointers) C programlama dilinin en güçlü özelliklerinden biridir. Göstericiler, işaretçiler yada pointer adı da verilmektedir. Gösterici (pointer); içerisinde bellek adresi

Detaylı

BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI

BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI ITS-101A INTERNET EĞİTİM SİSTEMİ TCP/IP THE DOMAIN NAME SYSTEM (ALAN ADI SİSTEMİ) İstanbul Ticaret Üniversitesi Bilgisayar Mühendisliği Bölümü Araş. Gör. Can EYÜPOĞLU

Detaylı

KUANTUM KRĠPTOGRAFĠ ĠTÜ BĠDB AĞ GRUBU/TANER KOÇ

KUANTUM KRĠPTOGRAFĠ ĠTÜ BĠDB AĞ GRUBU/TANER KOÇ KUANTUM KRĠPTOGRAFĠ ĠTÜ BĠDB AĞ GRUBU/TANER KOÇ Kriptoloji, kriptosistem ya da şifre adı verilen bir algoritma kullanılarak bir mesajın sadece anahtar olarak bilinen ek bilgilerle birleştirilip okunmasının

Detaylı

http://www.fatihbasaran.com.tr

http://www.fatihbasaran.com.tr http://www.fatihbasaran.com.tr FmB Network Tools Kurulum ve Kullanım Rehberi 1) Kurulum a) Hazırlık Eğer indirmediyseniz, yazılımın bir kopyasını aşağıdaki adresten edinebilirsiniz. Kurulum öncesinde tüm

Detaylı

EŞANJÖR (ISI DEĞİŞTİRİCİSİ) DENEYİ FÖYÜ

EŞANJÖR (ISI DEĞİŞTİRİCİSİ) DENEYİ FÖYÜ EŞANJÖR (ISI DEĞİŞTİRİCİSİ) DENEYİ FÖYÜ Giriş Isı değiştiricileri (eşanjör) değişik tiplerde olup farklı sıcaklıktaki iki akışkan arasında ısı alışverişini temin ederler. Isı değiştiricileri başlıca yüzeyli

Detaylı

Bahar Dönemi. Öğr.Gör. Vedat MARTTİN

Bahar Dönemi. Öğr.Gör. Vedat MARTTİN Bahar Dönemi Öğr.Gör. Vedat MARTTİN Merkezi İşlemci Biriminde İletişim Yolları Mikroişlemcide işlenmesi gereken komutları taşıyan hatlar yanında, işlenecek verileri taşıyan hatlar ve kesme işlemlerini

Detaylı

İşletim Sistemi. BTEP205 - İşletim Sistemleri

İşletim Sistemi. BTEP205 - İşletim Sistemleri İşletim Sistemi 2 İşletim sistemi (Operating System-OS), bilgisayar kullanıcısı ile bilgisayarı oluşturan donanım arasındaki iletişimi sağlayan ve uygulama programlarını çalıştırmaktan sorumlu olan sistem

Detaylı

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı. devrim@gunduz.org

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı. devrim@gunduz.org Devrim GÜNDÜZ TR.NET Sistem Destek Uzmanı devrim@gunduz.org http://seminer.linux.org.tr http://belgeler.linux.org.tr http://lkd.belgeler.org http://www.linux.org.tr/belgeler.php http://www.gunduz.org/belgeler.php

Detaylı

Ayni sistem(host) üzerinde IPC. Ağ(network) aracılığı ile IPC

Ayni sistem(host) üzerinde IPC. Ağ(network) aracılığı ile IPC Ayni sistem(host) üzerinde IPC Prosesler Host P 1 P 2 P 3 IPC mekanizması OS kernel Ağ(network) aracılığı ile IPC Host A Host B Host C P 1 P 2 P 3 Ağ(Network) 1 Temel TCP/IP protokolleri OSI katmanları(layers)

Detaylı

2) Hesabınıza Giriş yaptıktan sonra aşağıdaki ekran karşınıza gelir.

2) Hesabınıza Giriş yaptıktan sonra aşağıdaki ekran karşınıza gelir. MEB.K12.TR Uzantılı E-Posta Hesabının Kullanımı 1) http://mail.meb.k12.tr internet adresinden e-posta hesabına giriş yapılır. Kullanıcı Adı : KURUM KODUNUZ (meb.k12.tr kısmını yazmayınız.) Şifre : Hesabınıza

Detaylı

GİRİŞ-ÇIKIŞ (INPUT / OUTPUT) ORGANİZASYONU

GİRİŞ-ÇIKIŞ (INPUT / OUTPUT) ORGANİZASYONU GİRİŞ-ÇIKIŞ (INPUT / OUTPUT) ORGANİZASYONU GİRİŞ / ÇIKIŞ ARA YÜZEYİ (I/O ARA YÜZEYİ) G/Ç ara yüzeyi bilgisayarda bulunan bilgilerin dış G/Ç aletleri arasında aktarmanın yapılması için bir yöntem sunar.

Detaylı

Ağ Yönetiminin Fonksiyonel Mimarisi

Ağ Yönetiminin Fonksiyonel Mimarisi Bölüm 7 Ağ Yönetimi Ağ Yönetiminin Fonksiyonel Mimarisi a) Performans (Performance) Yönetimi b) Sistem Ayarları (Configuration) Yönetimi c) Hesap (Account) t)yönetimi i d) Hata (Fault) Yönetimi e) Güvenlik

Detaylı

Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü. Bilgisayar Ağları Dersi Lab. 2

Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü. Bilgisayar Ağları Dersi Lab. 2 Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Bilgisayar Ağları Dersi Lab. 2 İçerik IP ICMP MAC Tracert IP Protokolü Ağ katmanı paketlerin kaynaktan hedefe ulaşmasından sorumludur.

Detaylı

3.Türkiye'de IBAN kullanımı konusunda bir düzenleme var mı?

3.Türkiye'de IBAN kullanımı konusunda bir düzenleme var mı? IBAN uygulamasına erteleme yok Merkez Bankası, Uluslararası Banka Hesap Numarası'nın, 1 Ocak 2010 tarihinden itibaren yurttaşların bankalardan yapacakları yurtiçi para transferlerinde kullanılmasının zorunlu

Detaylı

İşletim Sistemlerine Giriş

İşletim Sistemlerine Giriş İşletim Sistemlerine Giriş Bellek Yönetimi (Memory Management) İşletim Sistemlerine Giriş - Ders09 1 SANAL BELLEK(Virtual Memory) Yıllar önce insanlar kullanılabilir olan belleğe sığmayan programlar ile

Detaylı

Bilgi ve Olay Yönetim Sistemi

Bilgi ve Olay Yönetim Sistemi 1 Bilgi ve Olay Yönetim Sistemi Kurulum Kılavuzu Nisan 2016 Versiyon Sürüm 2.1.3 2 İçindekiler Bilgi ve Olay Yönetim Sistemi... 1 1. Sistem Gereksinimleri... 3 2. Kurulum... 3 3. Lisanslama... 10 4. Windows

Detaylı

Bilimsel Araştırma Projeleri Otomasyon Sistemi

Bilimsel Araştırma Projeleri Otomasyon Sistemi Bilimsel Araştırma Projeleri Otomasyon Sistemi Kullanım Kılavuzu Bu kılavuz, Bilimsel Araştırma Projelerini Otomasyon Sistemi üzerinden nasıl yönetebileceğiniz hakkında yönergeler içermektedir. Yeni otomasyon

Detaylı