top.tipText = new Array();
var isLayers = 0;
var isAll = 0;
var isID = 0;
function init()
{
if (document.getElementById)
{
isID = 1;
}
else if (document.all)
{
isAll = 1;
}
else
{
isLayers = 1;
}
if (isLayers == 1)
{
var tipArray;
}
else
{
top.frames['tip_frame'].document.open();
top.frames['tip_frame'].document.write("");
top.frames['tip_frame'].document.close();
}
}
function findDOM(objectID,withStyle)
{
if (withStyle == 1)
{
if (isID)
{
return (document.getElementById(objectID).style);
}
else if (isAll)
{
return (document.all[objectID].style);
}
else
{
return (document.layers[objectID]);
}
}
else
{
if (isID)
{
return (document.getElementById(objectID));
}
else if (isAll)
{
return (document.all[objectID]);
}
else
{
return (document.layers[objectID]);
}
}
}
function getWidth()
{
if (window.innerWidth != null)
{
return window.innerWidth;
}
else if (document.body.clientWidth != null)
{
return document.body.clientWidth;
}
return (null);
}
function showTip(evt,framename,objectID)
{
dm = findDOM(objectID,0);
ds = findDOM(objectID,1);
setText(dm, framename);
var width = getWidth();
if (dm.offsetWidth)
{
objWidth = dm.offsetWidth;
}
else if (dm.clip.width)
{
objWidth = dm.clip.width;
}
if (evt.y || evt.pageY)
{
if (evt.pageY)
{
topVisibility = evt.pageY + 20;
leftVisibility = evt.pageX - (objWidth/4);
}
else
{
topVisibility = evt.y + 20 + document.body.scrollTop;
leftVisibility = evt.x - (objWidth/4) + document.body.scrollLeft;
}
if (leftVisibility < 2)
{
leftVisibility = 2;
}
else if (leftVisibility + objWidth > width)
{
leftVisibility -= objWidth/2;
}
ds.left = leftVisibility;
ds.top = topVisibility;
}
ds.visibility = "visible";
}
function hideTip(objectID)
{
ds = findDOM(objectID,1);
visibility = ds.visibility;
ds.visibility = "hidden";
}
function setText(dm,framename)
{
var tmpArray;
var frameFound = false;
for (var i=0; i=4)
this.ns4 = (this.b=="ns" && this.v==4)
this.ns5 = (this.b=="ns" && this.v==5)
this.ie = (this.b=="ie" && this.v>=4)
this.ie4 = (navigator.userAgent.indexOf('MSIE 4')>0)
this.ie5 = (navigator.appVersion.indexOf('MSIE 5.0')>0)
this.ie55 = (navigator.appVersion.indexOf('MSIE 5.5')>0)
if (this.ie5) this.v = 5
this.min = (this.ns||this.ie)
}
// automatically create the "is" object
is = new BrowserCheck()
if (document.getElementById || document.all)
{
document.write("");
}
else
{
document.write("");
}
Wprowadzenie
Zadaniem warstwy transportowej TCP/IP jest, jak sugeruje jej nazwa,
transport danych pomiędzy aplikacjami urządzenia źródłowego i docelowego.
Dokładne poznanie działania warstwy transportowej jest niezbędne do zrozumienia
zagadnień związanych z nowoczesnymi sieciami przesyłania danych. W module tym
zostaną opisane funkcje i usługi tej krytycznej warstwy modelu sieciowego
TCP/IP.
Wiele aplikacji sieciowych znajdujących się w warstwie aplikacji
modelu TCP/IP jest dobrze znanych nawet sporadycznym użytkownikom sieci. Na
przykład terminy HTTP, FTP i SMTP są akronimami często spotykanymi przez
użytkowników przeglądarek WWW i klientów poczty elektronicznej. W module tym
zostały również opisane funkcje tych oraz innych aplikacji modelu sieciowego
TCP/IP.
Po zakończeniu tego modułu uczestnicy kursu powinni potrafić:
opisać funkcje warstwy transportowej modelu TCP/IP,
opisać kontrolę przepływu,
opisać procesy ustanawiania połączenia między równorzędnymi systemami,
opisać okienkowanie,
opisać potwierdzenia,
zidentyfikować i opisać protokoły warstwy transportowej,
opisać formaty nagłówków w protokołach TCP i UDP,
opisać numery portów wykorzystywanych w protokołach TCP i UDP,
wymienić główne protokoły warstwy aplikacji modelu TCP/IP,
krótko opisać właściwości i działanie dobrze znanych aplikacji modelu
TCP/IP.
Wyszukiwarka
Podobne podstrony:
contentcontentcontentcontentcontentcontentcontentcontentcontentfunction domnode get contentcontentcontentcontentcontentcontentcontentwięcej podobnych podstron