|
|
1.1 ! root 1: .PS 8.5i ! 2: .ps 20 ! 3: boxwid = 2*boxwid ! 4: define boxit @ ! 5: box "$1" with .n at ($2.s.x, $2.s.y-lineht/2) ! 6: line from $2.s to last box.n ! 7: @ ! 8: define peer @ ! 9: box "$1" with .n at ($3.s.x, $3.s.y-lineht/2) ! 10: line from $3.s to last box.n ! 11: line $4 from $2.e to last box.w ! 12: @ ! 13: ## figure 1 ! 14: B1: box "APPLICATION" ! 15: B2: boxit(PRESENTATION,B1) ! 16: B3: boxit(SESSION,B2) ! 17: B4: box "TRANSPORT" "SERVICE" with .n at (B3.s.x, B3.s.y-lineht/2) \ ! 18: height 2*boxht ! 19: line from B3.s to B4.n ! 20: ## ! 21: P1: box "APPLICATION" with .w at (B1.e.x+2*linewid, B1.e.y) ! 22: line dashed from B1.e to P1.w ! 23: P2: peer(PRESENTATION,B2,P1,dashed) ! 24: P3: peer(SESSION,B3,P2,dashed) ! 25: P4: box "TRANSPORT" "SERVICE" with .n at (P3.s.x, P3.s.y-lineht/2) \ ! 26: height 2*boxht ! 27: line from P3.s to P4.n ! 28: line from B4.e to P4.w ! 29: ## ! 30: C1: box "APPLICATION" with .w at (P1.e.x+linewid, P1.e.y) ! 31: C2: boxit(PRESENTATION,C1) ! 32: C3: boxit(SESSION,C2) ! 33: C4: box "TRANSPORT" "SERVICE" with .n at (C3.s.x, C3.s.y-lineht/2) \ ! 34: height 2*boxht ! 35: line from C3.s to C4.n ! 36: ## ! 37: Q1: box "APPLICATION" with .w at (C1.e.x+2*linewid, C1.e.y) ! 38: line dashed from C1.e to Q1.w ! 39: Q2: peer(PRESENTATION,C2,Q1,dashed) ! 40: Q3: peer(SESSION,C3,Q2,dashed) ! 41: Q4: box "TRANSPORT" "SERVICE" with .n at (Q3.s.x, Q3.s.y-lineht/2) \ ! 42: height 2*boxht ! 43: line from Q3.s to Q4.n ! 44: line from C4.e to Q4.w ! 45: ## ! 46: G1: box "APPLICATION" "GATEWAY" \ ! 47: with .sw at (P1.nw.x, P1.nw.y+lineht) \ ! 48: height 2*boxht width C1.ne.x-P1.nw.x ! 49: line up from P1.n ! 50: line up from C1.n ! 51: line dashed from (G1.s.x, G1.s.y-lineht/2) \ ! 52: to (G1.s.x, C4.s.y-lineht/2) ! 53: ## ! 54: G2: box with .nw at (P4.sw.x, P4.sw.y-lineht) \ ! 55: width C4.se.x-P4.sw.x height boxht/6 shaded ! 56: move to (G2.s.x, G2.s.y-lineht/2); "GATEWAY HOST" ! 57: move to ((B4.s.x+P4.s.x)/2, B4.s.y-lineht/2); "ISO" ! 58: move to ((C4.s.x+Q4.s.x)/2, C4.s.y-lineht/2); "non-ISO" ! 59: ## ! 60: .PE
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.