From OSI Layers to Evolution Layers via UNIX
Undoubtedly the OSI model is no help for beginners of Networking, it does not tell you how to play with network technology. Due to lack of any other didactic means it has became the de facto introductory material until books began to appear around the early 90s.
Its strong point is that it pushed the case for standards at times where the big computer makers like DEC and IBM battled to establish their own proprietary computer-network technology like DNA and SNA correspondingly. Amongst the positive achievements of OSI are ASN.1, a data structure modelling tool and the fist ever go at fixing Networking concepts.
In this battle for the network the other opposite was the telecommunication industry which did push for standards but also their own agenda, its main feature was to obstruct competition in this new world of computer-networks. The most powerful weapon, in fact a Trojan horse, was UNIX.
Friday, December 24, 2010
Tuesday, December 14, 2010
From SASL to COSINE via TURCHIN (*)
In 1986 I enrolled to a real life course on Networking then sometime later I started to look for its fundamentals.
The experimental platform was a French UNIX network station prototype TELMAT SM90, a TELEFILE desktop X.25 switch and Packet-Assembler-Disassembler device and a bunch of QUME TTYs at the end of some leased 9.6Kbps telecom analog lines. Two SUN 4/430 and a CISCO AGS+ (the first shipped to Greece) were added to the platform around 1991.
At some point in time of self-checking my learning path I concluded that in addition
to being an Internet Evangelist I bound myself to the problem of Network understanding.
Modeling Network Evolution.
I can give many different departure points but one thing is certain, linking my practice to theory is ultimately related to Valentin Turchin' book the Phenomenon of Science.
From 1986 to about 1999 I struggled with the idea of using Turchin´s Metasystem Transition as a vehicle to understand Networking. A self set problem while being employed to develop an academic Network, starting from
packets versus circuits and ISO's OSI versus IETF's TCPIP.
I had may doubts whether my approach made sense but occasionally I came across some resource mainly through network browsing that would support it and enable my next step.
In fact more than one step unfolded because of harvesting resources of encouragement such as an email by IAB's chair F. Baker of CISCO stating the need to establish "Pseudo-Areas" in addition to the classic knowledge "IETF Areas". Inside a Pseudo-Area its members keep a distance from the nitty gritty of the work done. For example about Layer 2 deliberations. I interpreted "distance" to mean abstraction and this was my approach.
David Turner's's code, his SASL programming examples, his abstractSECD machine implementation and the SKI machine based on Combinatory Logic where even the difficult concept of Recursion gets wrapped up by a couple of symbol shifting techniques (pls see previous post) then I say that I am adequately equipped to apply abstraction power to whatever network comprehension problems
I had in front of me.
Here the raw concepts (**) were:
Packets, Circuits, Protocols, Layers, Distributed systems. Network Services, Remote Logins, UNIX sockets,
File transfers, X.25 nodes, Telecom communication lines, Modems ...
This was effectively triggered when I grasped the basics of OSI and met ASN.1 (Abstract Syntax Notation) a language to encode protocol data. I immediately linked ASN.1 to Turchin's REFAL (much later Turchin did the same and linked it to XML). Researching the fundamentals I turned to whatever shed light on the entity network
examples ?
Saunders McLane (Mathematics is a network from his book "Mathematics, Form and Function"),
Alvin Toffler (technology waves),
Seymour Papert (transitive objects), Edward De Bono (Lateral thinking) and much later Kevin
Kelly.
Phase one of the learning course is participating in Network Working Groups (*) where leaders drive the course and simple members like my self bring the
message back to the locality.
Next post will be about phase two where I manage to identify the major evolution points
of Networking and construct its abstraction.
(*) SASL - St. Andrews Static Language (aka SASL). A software platform which I tinkered
with for several years both SECD and SKI machine implementations
created by David Turner.
COSINE - Cooperation for Open Systems IN Europe, the master programme (1984 - 1992) of the EU DGXIII/EUREKA to Network computers from Universities, Industry and Government. Open Systems means X.25 and OSI technology to be used by Communities such as RARE. I attended RARE WG Messaging, RARE WG directories, RARE subWG Networked Information Resources & User Services. EBONE technical committee, CERN CHEOPS group for High Speed via Satellite, the RIPE group and the DANTE Access Point Managers group.
TURCHIN - My main influence was Turchin the inventor of REFAL - Recursive Functions Algorithmic Language and of the Supercompiler a system about automating automation (software that processes software).
(**) I had to learn about all these the hardest possible way, so pls do not repeat, just go
to a place and ask for help and be generous to ACK it.
Wednesday, May 06, 2009
From BIT shifting to S,K,I re-writing (*)
From BIT shifting to the Combinatory Machine internals (or S,K,I graph re-writing)
After Essex University I went to St.Andrews for graduate studies and research in Mathematics. It took some time to settle in, Clifford Algebras was offered by Dr. John Amson but there was problem. Prof. Jack Cole gave me a chance to transfer to the Department of Computational Science, his research student L.Papantoniou that was testing the convergence of Turing machine and Markov Algorithms was a friend of mine and encouraged my move.
I started with the PAL manuals (Evans), the SECD machine (Landin) and the BCPL interperter of SASL that David Turner used to teach Denotational Semantics of Programming Languages. Officially I was under the instruction of Tony Davie who overtook the work left by Turner (he later wrote a book on Haskell). I ran by hand hundreds of lambda conversions and looked into parallel architectures like the Data Flow machine of Manchester.Steve Martin, a fellow student gave me his lecture notes from the Essex Comp.Sci. course so I can say that I almost completed the Computer Science B.A course at the University of Essex in spite enrolling for the 2nd and 3rd years to the B.A Mathematics.
I planned for a parallel SASL interpreter and take measurements on the factor of parallelism possessed by SASL programs.
As implementation platform I used the PDP-11/45 running UNIX edition 7 from AT&T. George Nelson's notes from a Bell lab's seminar helped me get started with trying to hack the OS scheduler written in C so that I could control the process execution profile.
"Oh no ! this is far too low level paralellism, you must play at the user data structure level of Turnerś ALGOL-S (R.Morrison turned it to S-ALGOL on the PDP-11), make a ring and give each virtual machine a tick at a time", this was Turner's advice. He wanted to find ways to optimize SASL for productive use. Reduce the massive spagetti of pointers (memory addresses) and exploit parallel execution. The latter was my task. He had just invented an alternative to SECD implementation based on Combinators of Haskell Curry (a Logic Theorist), a really ingenious programming idea (cannot call it hack) using Logic (see Dana Scott for proper analysis) as machine language ! all for the purpose of optimising pointers (variables needed memory slots that needed pointing). Turner used Combinators to do away with variables. At user level this meant a different style of programming. Well, Turner's mentor at Oxford was Strachey and his mentor was Turing.
Ronan Sleep at East Anglia, employed me as a research fellow, was interested in the R-N-Cube architecture executing SASL code. The SECD implementation was far too messy so I provided a run-time system in Pascal for him based on the C program of the Combinatory code at St.Andrews.
The environment of St.Andrews, very much influenced by David Turner's ideas, connected me with interesting concepts: C.Strachey's programme and D.Scott's mathematical foundation, Program transformation of Edinburgh and G.Steele's SCHEME and parallel garbage collection of LISP cells. Even a VLSI workshop with Conway's book to learn how transistors are printed over silicon layers. Compilers for Algol like languages and operating systems for small machines (e.g Cromenco) were all around me with students and lecturers talking at coffee time. Paul Maritz of Microsoft was next door struggling to implement S-Algol on 8088/86 board computer. From him I learned the idea of Mooreś Law "I learned hardware at Intel I came at St.Andyś to learn software¨. What an impressive statement at 1979 !!!. My goal was research to learn what is ¨programming language¨. I followed Turner's vision:
The big problem of the day was Software crisis and SASL should help to solve it because large numbers of processors had to be programmed and the cost of software had to be checked.
It seems looking back, the problem still is open but externalities kicked in, the free/open software armies emerged and Linus Law made "all bugs are shallow given enough eyeballs" provide the current solution.
(*) the title indicates that the computing model at Essex that I got familiar with as a computer science student, can be very compactly described by the notion of 'BIT' (Binary digIT). Many machine instructions (machine code) are implemented by literally shifting bits.
At St.Andrews (the next level of learning) had to do with a different computing model based on the idea of combinator, a basic construct that shifts symbols around like when passing parameters to a function or the emulation of recursion.
Both models originate in the attempt to mechanize mathematics in order to stable its foundations.
Friday, December 12, 2008
I saw the machine cycle !
In my previous post I wrote-up the list of the main points that indicate my participatory observation to the Networking phenomenon. In the present one I will try to trace my knowledge path, somewhat abstracted over full details. I will focus on main ideas and concepts constructed in my domain with a little help of my friends in knowledge acquisition.
First step, was electronics one night my old man Panagiotis talked about Sputnik in sovietland. We were both gazing into the dark-blue sky, resting on a bed out in the garden in summer time, no air condition then and no burglars. Walls were releasing the stored heat from the day's radiating sun. Rockets in Space, huge electricity generators in Nile as imprints into my mind. I was keen on electricity while at school, it must have been also the simple experiments from an amateur's magazine I guess that related me to electronics to become a study goal later.
So I entered for Essex Computer Science, after GCE's at Hastings College for Further Education following my schooling in Athens and the army still in Gov. Computer Science, Mathematics and Electronics the major subjects.
My colleagues had ample practical experience with electronic components, hacking old computers by hobby. Another colleague was experimenting with a synthesizer. Unfortunately, lacking lab experience, I interpreted the hobby as a prerequisite for the university course so I dropped electronics since computer science was "higher level" digital domain.
One of the most important concepts I grasped was the real live picture shown on the oscilloscope's green screen: The main clock pulse, the other small pulses generated driving the gate components on the mother board, the sequencing of actions between registers that shifted bits around. The exercise was to tune the board's devices so that all pulses were time cascaded under the one big cycle, the machine cycle.
It was the lab and course designed by Prof. Tony Brooker at Essex University in 1974 who delivered the lectures. My tutor, was Ian MacCallum, he ran the 16-Micro-V microcomputer programming course emulated on the DEC TOPS-10. Small programs where entered manually by flipping the switches of the box but bigger ones were prepared on punched cards and entered on the DEC Mainframe as a deck of cards.
Before that was connecting the basic components: transistor flip-flops, NAND gates, adders, registers, wired-up ferrite-core rings magnetized, LED panel.
Actually, day one in the lab we played with a paper computer, a wooden structure, an overturned cupboard laid upon a table. The small nests containing paper cards. Each card had instructions to the student executor: put this card into the nest labeled program-counter. A manually operating computer !
I was quite familiar with manual procedure as I did the the numerical analysis lab at Hasting College the year before. There we played with iterative methods on old style calculators with handles.There I learnt BASIC using a teletype to log into a US Mainframe.
It was a fascinating course at Essex Computer Science Department at the School of Mathematics. Jim Brady, Andrew Lister, Pat Hayes, Richard Bornat were running an incredible show.
But it was the Maths department that won me over since Brooker and others were against our student Union occupation adventure, too right wing for my taste. Those days, Maggie Thatcher came to campus to see the reds and Keith Joseph. I was more attracted by the political electricity of our president, on a wheel chair with speech disorder. Essex radiated electricity similar to the sound produced by Sex Pistols in concert below Square 4.
In fact, the real reason I did not follow Computing was my failure at ALGOL-60. Richard Bornat did not believe that the messy program-deck I submitted was due to the spitting of the card-reader not the result of my ignorance that WRITE (X) comes after READ (X). It is funny, recently I read on the web that he received a suspension from teaching due to mis-behaviour to a student! some people never change !.
Mr. Corovesis you are my worst student, you have not learnt a thing from the course and your assignment work (backtracked horse moves on chess-board) proves it. I did my best to explain: had to be in St. Albans for the week-end, did not keep a printout, program was OK but I had to put back the cards in order (after the spitting by the Card-reader device) without looking at the printout !! I scored A on Pure Maths, I am no idiot Mr Bornat,
no way said he, pity the hippie necklace he wore I thought and dumped the course,
there is an economic crisis who will need work automation after all, I assured myself.
Thursday, September 11, 2008
Sharing my learn-by-doing path
During the period 1986 - 2006 I engaged heavily into Internet R&D, I have managed to write about this path in over 30 postings on my Greek blog.
A 2-page summary can be found in my cv-like blog.
Each one of the postings has a title which marks a point in my understanding about the Net.
title 1: A series of "what is ?" questions
title 2: X.25
title 3: RS-232
title 4: Dial-up
title 5: TELMAT SM90 UNIX edition 7
title 6: ISOSUN: the double headed giant
title 7: MIME 1.0: the multimedia transition
title 8: NIR: Networked information resources (WWW)
title 9: The Automation of ARCHIE
title 10: DNS Automation: the first step
title 11: The Last manual step
title 12: CIDR: changing routing engine en flight
title 13: L.Robert's quantum of Automation
title 14: A new Automation Quantum
title 15: About predictions of the Model
title 16: The value of Theory
title 17: The international knowledge channel
title 18: Visionary policies
title 19: What is (in)Security ?
title 20: Daily things
title 21: GRNET: a missed BCP
title 22: Cyber warfare
title 23: IPv6 enabled DNS Root Servers
title 24: Similar spirits
title 25: The Insecurity of encrypted files
title 26: The Web pirates of Youtube
title 27: Forking on cyberspace
title 28: A big picture for Internet
title 29: The Macedonian name problem on cyberspace
title 30: WinXP on OLPC: dancing with the devil
title 31: Internet: Man machine symbiosis
title 32: The birth of Internet: a debate by Similar Spirits
title 7:
Friday, March 07, 2008
Internet Evolution by V.Cerf
Vinton Cerf is one of my sources concerning internet. I did listen to him at a networking conference in Trieste, I think during September 1989. I did not undestand a thing as I was coming from the OSI world, in addition to being a utter newbie on the subject.
Although, I recalled the word "Arpanet "during a meeting at Didcot around 1981. I understood then that it was about a facility, triggered by a command like MAIL in VMS or UNIX, to assist multi-person collaboration. I was to liaise on a functional programming project between UK-ECRC and US-DARPA using the medium but that's all no more clues about it.
I have just found an old note by him that has the same title that I gave to a presentation I did in Greece at 1994, at the Technical Chamber. My thinking for using the phrase "the internet phenomenon" is elaborated in another blog that is also concerned with internet evolution. There, the influence is the phrase "artificial intelligence" the key term that concerned the pioneers of computing.
I have just followed a lecture by him given to students in Stanford University as a Google Internet Evangelist. The site has a list of very interesting lectures. I noticed that he exhibits an understanding of the Net through the means of his own experience (at the end of the lecture he also casts some future research problems).
I also want to show some light on the issue of "What is the Net ?" via the means of reflecting my own learning path, lasting several years during the period 1990-2000 that happen to cross significant Net happenings (*). It is certainly infinately distant to Cerf's path but none the less cannot help but notice the matching.
Now speaking of key people, I also read an article by Eric Schmidt in the Economist titled "World in 2008, do not bet against the Net". This makes me think how invaluable are such links as knowledge resource.
(*) Karen Ellis now runs Net happenings, did pay attention to my use of the site by making a reference to it (much obliged for the honour, thanks Karen)
Wednesday, February 20, 2008
Historical points about Computing in UK
The following Email from Randell to Farber, does explain to me why Brooker was so "closed source" (*) while teaching at Essex, in fact this was one of the reasons that I moved next door to Maths, the other was the
negative comments of Bornat on my ALGOL-60 assigment (he was definately wrong). All Colossus machines were destroyed.
(*) he went crazy about his lecture being taped by a fellow student from Iran.
From: Brian Randell <Brian.Randell@ncl.ac.uk>
Date: November 19, 2007 8:51:22 AM EST
To: Charles Pinneo <pinneo@sbcglobal.net>
Cc: dave@farber.net
Subject: Re: [IP] Re: 60-year-old computer loses race
Charlie:
> What's interesting to me about Colossus is how the English see the
> history of computers in a different light than Americans see it due
> to national chauvinistic rationalizations and also as affected by
> how you define "computer." For example, Americans who don't know
> much about computer history, might see Univac as the first computer,
> whereas the British might see Colossus as the first computer. Or the
> French might place more importance on Jacquard's Punched Cards. It's
> all how you look at it from a nationalistic point of view.
Aside from nationalism, the way I put it is that if you add enough
adjectives, anything can be identified as "first". (And issues of
primacy are not really as important as issues of influence.)
FWIW, to my mind the first operational practical electronic stored
program computer was the Cambridge EDSAC - 1949
If you remove "practical" you identify the Manchester machine built to
test the Williams tube memory, which worked first in 1948.
Then remove "stored program" and you get into arguments about degree
of programmability, and in particular between ENIAC (1946) and
Colossus (1943/4)
Then remove electronic and you get back to Zuse
Then also remove operational and you get to Babbage - my other great
hero.
:-)
The situation with regard to the Colossus is complicated by issues of
secrecy. I broke the first reasonably detailed news of the Colossus in
the 1970s, after nearly 30 years of everyone assuming that the ENIAC
was the first electronic computer. But now in Britain at least its
fame is bound up with that of Bletchley Park, Alan Turing and
(confusingly) Enigma.
The recent publicity has been engineered as part of a campaign to
obtain funding for a museum at Bletchley Park.
> In view of history, though, Colossus is far more important because
> if Colossus hadn't been used at Bletchley Park to defeat the
> Germans, we would all be speaking German.
Agreed, though that's a bit of an overstatement - I think military
historians now accept that the work at Bletchley Park shortened the
war by a couple of years - which of course is a fantastic achievement,
and to have kept it all completely under wraps for 30 years is amazing.
> Has the rebuilding of Colossus sparked more interest in the history
> of computing in England?
Certainly there's been quite a bit of publicity, but perhaps the
general interest is more related to code-breaking than to computing.
> I found this really neat YouTube movie clip about the rebuilding of
> Colossus. I'm sure you've seen it.
I hadn't - thanks for the heads-up.
> I read The Second World War by Winston Churchill. I mailed it to my
> brother in Arizona and then he mailed it to my nephew (his son) in
> Florida. It's making the rounds in our family.
I don't get to spend much time on matters to do with computer history
these days, but I count my publicising of Tommy Flowers' work on
Colossus, and getting this University to award him an honorary
doctorate as perhaps my proudest achievement, and my getting to see
the cache of Babbage papers, including his fantastic unpublished 1837
manuscript "On the Mathematical Powers of the Calculating Engine", at
the Oxford Museum of the History of Science, as one of my most
exciting moments.
cheers
Brian
--
School of Computing Science, Newcastle University, Newcastle upon Tyne,
NE1 7RU, UK
EMAIL = Brian.Randell@ncl.ac.uk PHONE = +44 191 222 7923
FAX = +44 191 222 8232 URL = http://www.cs.ncl.ac.uk/~brian.randell/