Good morning!
Welcome to this course on Algorithms for Internet Applications.
You know that this course is taught in English, so that's why I
welcome you in English, and the complete course will be in English.
I'm glad that that many people turned out for this course.
I guess for this course I did not have that many students in the room,
I think, in all the previous editions of this course, so I'm glad that
you all came.
And it's good that you are interested in Algorithms for Internet
Applications.
So I will start with some remarks on organizational details, and I
would like to start by presenting myself briefly.
So that's my contact data, so you know that I'm sitting in the Allianz
building, not that far from here.
And I'm in the Institute AIFB, I'm also in the Research Center for
Information Technology.
Who of you has ever been in the House of Living Labs in the FZI?
Very few, so maybe come more, so there are always open days for
students where you can have a look at that, and look at what we are
doing there.
So what kind of research areas do I represent?
My major competence is in algorithms, that's why I call this course
Algorithms for Internet Applications.
And these algorithms can have many different shapes.
One particular point is that we look for quite some time on
optimization, on bio-inspired optimization, genetic algorithms,
encoding optimization, swarm intelligence, and things like that.
We developed here a research area called Organic Computing, having to
do with the multitude of devices that are penetrating all kinds of
areas in our daily life.
And these devices can communicate, can and should be self-organizing,
should do things on their own.
And if they can do that, we have to make sure that we can communicate
with those devices in a reasonable way.
So we need effective architectures for that, and that was the major
motivation for this research program on Organic Computing.
System architectures and methods, concepts to make sure that systems
in this very ubiquitous world of information processing, that these
devices can show an organic behavior.
So it's not on organic materials, but organic behavior, which we did
in that area.
And one application area that meanwhile turns out as being one of the
most challenging areas where we can apply or where we need concepts
that we developed actually in Organic Computing is the energy area.
You know that we are faced with quite some challenges there having to
do with the Energiewende, with the energy transition.
And so by looking at the kind of problems we have there, we noticed
that we really need input from informatics, from algorithms, from
concepts for self-organizing systems.
And we are developing there the area of energy informatics.
And certainly all this has to do with technologies that are the basic
of communication between information processing systems.
So internet certainly is an important technology there.
And well, we looked at these topics in many different projects.
So Meragio, Meragio Mobile having to do with minimum emission regions
where the major focus was on saving energy but also making energy more
flexible.
And by communicating the information about what's happening in the
energy system to some regional data centers and then come up with
appropriate services.
On top of that, we had follow-up projects like ITSOIS, Intelligent
Zero Emission Urban Systems.
Chrome was for cross-border mobility of electric vehicles.
And grid control was one of our newest projects where we designed
together with some other partners methods for stabilizing very
decentralized energy systems.
Microgrids, making them robust against external failures so that they
can actually stabilize themselves by using intelligent building energy
management systems and by having a regional energy management system.
We are active in the Energy Alliance Technology for Future Energy
Grids.
I'm active in the Large-Scale Data and Management Alliance, which is a
so -called portfolio project of the Helmholtz part of KIT.
And there I'm responsible for the data lifecycle lab energy within the
research program on supercomputing and big data.
We have here at Karlsruhe one of the three competence centers for IT
security.
We have three national centers, one at Saarbrücken, one at Darmstadt,
one at Karlsruhe.
And this at Karlsruhe is called Castell Competence Center for Applied
Security Technologies.
And there we also look at energy systems and areas where we have
something influenced by what we call Internet of Everything and look
at security topics there.
I'm also active in the storage and cross-linked infrastructures
program of the Helmholtz part, which is a new program where we address
exactly those new storage components and how they can be integrated
into the energy systems.
And certainly we have cooperation with industry, in particular at the
SRI, Research Center for Information Technology.
I'm also chair, or not chair, spokesperson of the KIT Center on
Information Systems and Technologies.
And that's more or less, well quite a bit, but information on my
person just to show you what kind of person is teaching you something
here.
And so that's a very broad background that I have.
And it's a fascinating time to see that so many things are changing.
And so it's a time now and in the future where many new business
models can be developed, many new technologies have to be developed.
And it's a perfect time for starting a professional life.
So for you it is, I would say, close to paradise with respect to what
you can expect to be able to do in the future if you look at all the
potential that is there in these new developments.
Okay, this course will be on algorithms for internet applications.
So it's on the basic technology and just a little bit more
organizational information.
The course will be presented as live lectures in this room,
definitely, and I'm always glad to see you here.
But the lecture is also recorded.
The slides, annotations, sound using Camtasia.
Who of you has never utilized or used a recorded lecture?
Aha, one person.
Okay.
So most of you have been in my other courses, so you know me already
and you know maybe also other lectures.
Who of you has seen recorded lectures at other courses than my
courses?
Aha, okay.
So some people are doing that.
Not as widespread as at other universities, but you know that my
courses are all recorded.
And they are available at the digital video and audio archive of the
KIT library.
You can look at that there in the streaming modules or you can
download the recorded lectures.
And you can view it with any media player, but one media player which
is quite useful is the VLC, which is a media player which allows or
which has some kind of visible scrolling, which is an important part
if you look at e-learning material.
But it also allows for something which is quite nice.
You can speed up the presentation.
And so my lecture is recorded as 90-minute lecture.
And you can play it and have it in 60 minutes.
And so that's more efficient learning.
You can also certainly make breaks in between, but it's easy to
understand or to listen to my voice even at a higher speed.
Because usually if you look at the recorded lecture, you have the
feeling, oh, he's talking so slowly.
If you are sitting in the room, it's not that slow.
And so there you can play around with the speed, which is quite nice,
I think.
And the voice does not go up as Mickey Mouse's voice.
And so it still sounds like my voice.
Okay.
Camtasia Player is also available.
That's the standard player for the Camtasia recordings, definitely.
It's still available, but it's no longer supported by TechSmith.
Like this free version, TechSmith likes you to buy the complete
package.
And so if you'd like to get the Camtasia Player, you can get that,
definitely.
Maybe that you need a specific codec for actually playing the recorded
lectures in best quality, but they are available also on the Internet
pages.
All the information on the course is available in the work areas of
this course.
So that's powered by Ilias, as you know.
And this QR diagram is linking to that page.
And here's the URL.
I guess you have looked at that already.
And so all the information is there.
And you should bookmark the resource in order to get information when
things are changing there.
So you don't have to look at it, or did something change, but you are
informed about additions to that thing.
This course actually has been part of several initiatives to use new
media in teaching.
There was a funding program by the state of Baden-Württemberg, but
also of the federal government.
And this year, the Universitäre Lehrverbund Informatik was a project
long time ago, more than 10 years ago, where the lectures were
recorded, broadcast to other places.
They were actually tele-lecturing.
But the important point was that others could also look at this
course, and we could also look, students here could look at courses
from other areas.
So in this Lehrverbund we had, I think, 10 different chairs at 10
different universities all over Germany, which were part of that.
But just a few things were still active, so I still have students
which actually register for this course at Hanover.
Currently the course, as I said, is still available to students at
Hanover.
So welcome to those at Hanover who are not here in the room at the
moment, but who will be listening to this sometime later.
The course is also open to students within something which was called
Eucor -Virtual, a special project of Eucor.
Who of you knows what Eucor is?
Ah, a few of you.
Perfect.
So for the others, that's the European Corporation in the Upper Rhine
Valley.
And so Oberrhein, that's the O-R-O-R.
And all the students at Karlsruhe, Freiburg, Basel, Straßburg, and a
few other places along the Upper Rhine Valley can take courses at any
of those universities.
So this is quite a flexible system.
And so in principle, students from other Eucor universities can take
this course also.
If students from other universities would like to take this course for
credit, you have to register for the course.
Send a message to my assistants, Jan Müller or Kai Benbau.
I think they are not here today.
No, they're not in this room.
But they are real.
So they are taking care of this course.
Okay.
I wanted to briefly present to you the Nukid cooperation tools.
Who of you has never used Nukid?
All of you, or quite a few of you.
Some of you have never used them.
I did not prepare it for today because I think I don't have my
lecturer password ready at the moment.
So I will not start it today.
But I just wanted to tell you briefly that we can have that.
Having that many students in the room, I will actually use it.
And you have the option to also use it and give feedback.
So this is something which was developed quite some time ago in the
Notebook University Karlsruhe.
And in a project federally funded.
And it was sleeping along.
Nobody really wanted to use that.
Although I presented that in every larger course.
And all of a sudden when the smartphone became more frequent, all of a
sudden the students, new students became more interested.
And we developed an app for that.
And now it's a quite widely used application.
So there is a web application and an app for Android phones.
Where you can actually give feedback in different ways.
Like this here is the web interface.
But more interesting is the smartphone interface.
Where you can actually register for this feedback system by giving
some name.
You have to select the course.
You have to provide a password for the course.
Which somehow I forgot to prepare for today.
So I cannot start that really.
I don't want to lose time by trying to find out what password that
actually was.
So you can ask questions.
You can give feedback by saying I should be faster.
Or it's alright.
Or I should slow down.
And I can ask you questions.
We can look at the responses to questions.
And in this way you can give feedback.
Which you can also always give by just raising your hand.
Or asking something in class here.
But sometimes it's more convenient actually to use this app.
Because you can then just send the question.
And I can respond to that at any time afterwards in a reasonable way.
When it fits into the way I present the slides.
So next time I will use it.
And I will tell you also what the password is for that app.
But today I will not use it.
Okay, time and location of this course.
Obviously you all know when it is.
Tuesdays in the room 001.
I actually don't like that room very much.
Because for those sitting in the back it's hard to actually see
everything there on the presentation area.
But it's one of our larger rooms.
So it should be okay.
These are the assistants who are actually taking care of the
tutorials.
Kaiben Bau and Jan Müller.
They have office hours upon agreement.
Just send them a message if you want to talk to them.
Or phrase your question in that message.
We also have tutors.
We have three tutors.
Eugen Freitag, Alexander Hotz and Christoph Neumann.
Any of them here in the room?
Probably not.
Tutors usually don't go to the lectures.
And you will be able to register for the tutorials.
You can do that right away by going to YouSubscribe.
The link is here.
That's the link for this course.
But you can also just by going to YouSubscribe and then register or
look for this course.
You can register.
And you know that it's not a first-come-first-served service.
But you can just register any time.
But you should do that by next Tuesday, 27th of October.
Then it will close.
And then the assignment of groups to students will be done.
And you get assigned some group.
Some tutoring group.
The starting date of the groups is the 3rd of November.
So two weeks from now the tutorials will start.
And the concept certainly is that you have the chance to do some
active things with the material that I'm presenting to you.
There will be six assignments.
There will be exercises and tutorials.
And some home assignments.
So you can do something in the tutorials.
And at home interaction in tutorials is an important part.
It shouldn't be just a presentation from the front.
Assignments will be reviewed in the tutorials.
So you will get information on how to solve the problems.
But some problems you will also solve in the tutorials.
You will get the solutions.
You will get feedback.
And so you can submit your solutions and you get feedback.
You know that that's the best possible way to actually prepare for an
exam.
To work actively on the material that was presented in class.
And on the topics, the exercises that are given in those tutorials.
We have this bonus examination for learning control.
So those who have actively and successfully participated in the
tutorials get a chance to actually get a bonus.
In addition to the bonus that you have by working actively on the
topics.
You can get a bonus examination on Wednesday the 20th of January at 19
.15.
So in the evening.
And what kind of bonus do you get?
There are a few exercises you have to do there.
And a few tasks.
And you have to solve all the problems that are given to you there
completely.
Or two of the three you have to solve completely.
And then you get a bonus.
And this bonus amounts to an improvement of your mark by one step.
That means you can improve it from 2.0 to 1.7 or from 1.7 to 1.3 or
any other step.
Certainly not beyond 1.0.
But you have to first of all pass the exam.
So you must achieve a 4.0 just by your answers to the exam questions.
And if you have been successful there, at least a 4.0, then you get
this extra bonus.
Okay, I think most of you know already this bonus system.
And so this is just an incentive for you to actively look at the
tutorial assignments and work on those topics.
Certainly it's not for just being good in the exam, but the topics
that we present are relevant with respect to things that are built on
that.
And Internet is one of the major technologies nowadays.
So you get five credits for this course.
It's for several programs of study.
Industrial Engineering and Management.
Economics Engineering.
Information Engineering and Management.
ENTECH.
Who is here from ENTECH?
ENTECH program.
Master program.
International Master Program.
Nobody.
Okay.
There's one.
Okay, welcome.
Where are you from?
From here.
Okay.
Perfect.
Very good.
So in any of these programs of study, you will have modules.
I listed here just the list of modules where this course can be taken.
So I just put it in several different modules.
Quite a few.
Maybe it's too much, but this can be used in a quite flexible way.
And I have given you here this list of modules in the PDF version.
You see that this is all linked to the appropriate module pages.
You can get the information with respect to those modules.
And you see what kind of other things you can take there.
So that's the way you can utilize this for your program of study.
At Hanover or at other universities, you certainly have to check with
your local program of study, with your responsible persons there,
which can tell you in which way you can utilize this course.
Okay.
What type of exam do we have?
We had the bonus examination.
Now we have the final exam.
Usually or always in the week after the end of lectures.
So that's one of those days, the 15th to 17th of February.
And so I cannot tell you the exact date now because it depends on who
is actually registering for the exam.
And then we have to find a schedule such that there are no conflicts.
The exam itself will be a list of tasks or questions that you have to
answer.
And the questions will all be in English, but you may answer in
English or German, whatever you like.
I want to see that you have actually learned something here and that's
not learning a language, but learning content.
And so it's not important which language you use for answering the
questions, but the questions will be in English.
It wouldn't make sense to have them in German if the course is in
English.
Why do I present English courses?
One reason is that our professional life is more and more
international.
It's nice to improve your English skills, also to maintain my English
skills.
And it's a preparation for foreign studies.
Who of you has never been studying in a foreign country?
Aha, it's time to do that.
So, foreign studies, like spending some time at a foreign university,
is a very valuable asset for yourself, for your professional and
personal development, also for your professional career, I guess,
usually.
This is very beneficial.
For job life, if you look at how job life is looking like nowadays, we
have globalization.
And in many large companies, the daily language is English, even if
the company is in Germany.
We have a global marketplace, so this is important.
And then, certainly, it's always nice to have foreign students in this
course.
Who of you is not capable to understand German?
You all understand German.
Okay.
Nevertheless, I'm teaching this course in English.
We can vote on that next time, when I have the app, just to see what
you think about this.
But obviously, it's no obstacle for you to come to an English course.
This way of teaching courses in English is something which we
introduced long ago.
We said that we don't want to offer our programs of study completely
in English.
But it should be possible for students from other universities, from
other countries, to come to Karlsruhe and spend here some time, one
term, one year.
And they should be able to also study here, even if they don't know
German.
That means that they must have a choice of lectures, of courses, that
are taught in English.
And so, we have in almost all subjects of this faculty, we have
English language courses.
Okay.
That's the organizational part.
And then I would like to come to a few... or now to the survey of the
contents.
So I will start with the survey of Internet applications.
Some introductory remarks I will make today.
I will tell you a little bit about Internet history and then about
technology.
What's behind the way we can actually send messages across in the
Internet between different nodes, TCP, IP, the different protocols
that we have there.
And one chapter will be devoted to searching for information.
How can we actually get information from different locations, from all
the resources that are there in all kinds of web servers and so on.
Then I will tell you something about security, about cryptographic
algorithms.
We know that IT security is one of the major topics meanwhile.
And this is some kind of overlap with other courses.
So what I forgot to ask, how many students are here from
Informationswirtschaft?
Some.
Okay.
And who is here from Wirtschaftsingenieurwesen?
Most of you.
Okay.
So for you it would not be an overlap for those in
Informationswirtschaft.
It might be an overlap if you take a course there on security, on
cryptographic algorithms.
So this is just one part.
But this is an important part of...
If we talk about Internet, we have to talk about security.
And so I will address that topic.
I will also tell you something about electronic payment systems.
That's a necessary application of cryptographic algorithms actually to
be able to pay electronically.
And what I present to you there will be to some extent on something
which is actively used nowadays.
Or on some things which could be used to actually realize a money
system that is something equivalent to cash money, to the real money.
So if we want to make business on the Internet, we have to be able to
pay over the Internet.
And not just by using our home banking systems.
I will also tell you in the end something about the Internet of
Energy.
Or Internet of Energy, not just the Internet of Data, which was the
topic before that.
Just to show a little bit about what we are doing in our energy
-related projects and what kind of technologies we are developing
there.
And this is more or less what I can present.
And then there are further topics which can be or could be looked at.
Firewalls used to be a part of this course.
I threw that out and replaced it with the Internet of Energy.
Internet of Things is something which is a very hot topic in the
moment.
Usually abbreviated as IoT.
Here we usually say not Internet of Things, but here we say Internet
of Everything.
And then the S would be cut out there.
So that would be I-O-E.
Internet of Everything could also be Internet of Energy.
So Internet of Everything is including everything.
We could look more deeply into that, but this is just beyond the scope
of this course.
Then we have interesting topics like digital libraries, electronic
publishing, electronic documents, information services, retrieval of
documents in the Internet.
Then representation of audiovisual data.
You know that nowadays you can look for or you can not just search for
some text, but you can also search for a photo, for an image.
And you get as a result of that search, you get all kinds of photos
that have same objects on that photo.
So this is actually content related, not just looking at the text
around a photo, but it is actually looking at the visual data that is
in that photo.
And you could also look for audio recordings, but this is all a little
bit more difficult.
And one could look into the data formats and search methods for that.
One could look at all kinds of Internet computing applications.
For instance, the Internet is a network of all kinds of computers and
there have been many initiatives using or utilizing that starting in
the 90s.
There it was initially called hypercomputing, then metacomputing, and
then all of a sudden somebody called it grid computing and it became
Momentum.
Hypercomputing, metacomputing were really more or less the same as
grid computing, but the name grid computing seemed to be more
attractive.
And then there are all kinds of services that are applied or that are
offered meanwhile.
In particular, now we have the topic of cloud computing where we move
all kinds of information processing tasks into the cloud somewhere up
there, somewhere at a virtual place where we don't know where it
actually is.
But we just want to get something as a service, software as a service,
algorithm as a service or whatever you would like, energy as a
service.
This is also something which is interesting and so many things are
developing there.
Spam protection, this is an important point having to do with the
security aspects.
You have to be able to protect yourself against malicious use of those
technologies and we know spam mails, there are also spam usages of
internet, of web presences and so one has to look at the way actually
people try to utilize the resources of the internet in a malicious
way.
And so we have all kinds of spam filters, spam barriers and things
like that.
Could be a topic of this course but I don't have the time for that.
I actually once looked for the name of my course Algorithms for
Internet Applications and I saw at some American university, I saw a
course Algorithms for Internet Applications number 2 and it was
exactly on those topics.
So maybe they have looked at my course and taken that as the first and
then offered their own course as the second.
So my course is available worldwide and so this may be used by other
people also but I don't have a record of where actually it is
utilized.
There are all kinds of references, like content references possible
for a topic like this, the internet, this is a widespread, there are
widespread resources, all kinds of catalogs.
There are these requests for comments, the RFCs.
This is the official documentation of everything that has been
designed for the internet.
And so this is maintained at this URL.
If you click on that you get, we can briefly click on that.
If I have, I don't know whether I actually have, yes I am connected.
So we can go back to that.
We can briefly, I can briefly show you this.
There you see the requests for comments.
You see that you can here look at the, you can look at all kinds, you
can here go to the RFC search space, you can go to some number.
Let me just type in here some, oops, type in some number.
Let's see what that is.
I have no idea what that actually is about.
And then you see this is cross-country network bandwidth.
So there are several thousand documents available on topics related to
the internet.
Internet protocols like the initial internet protocols like FTP or
Echo or whatever.
All these standard things, SMTP, like mail services and things like
that.
And you can look up all the documentation in that listing of
resources.
So that's the major resource for getting to know something about the
technologies associated with the internet.
And then we have something which has been built on the internet which
is the World Wide Web.
And so we have the, oops, we have the World Wide Web Consortium and
there we have the W3.org.
Now the World Wide Web Consortium is listing all the technologies,
protocols, languages, applications, essential applications associated
with the World Wide Web.
And the interesting point is that the internet catalog, the RFC, is
mainly maintained in the United States, North America.
Whereas the W3C is quite heavily influenced by Europeans because the
World Wide Web is a European creation or a European product whereas
the internet was designed originally in the United States.
So this is having all kinds of information on the, on all kinds of
standards for, and as I said, protocols, resources for the World Wide
Web.
At appropriate points we will go back to that, but not now.
I just wanted to show you that we have those, that those are important
resources.
Then there's some interesting information about the history of the
internet, so that's what the URL for that.
I will give you specific links, they will be on the, there are links
on the work area of this course, and so you can go to that.
There are all kinds of journals dedicated to web topics, internet
topics, so you can look at those also.
And books, many books on these technologies.
I did not update this to the most recent books, but just listed a few
books on information retrieval, computer networks, on internet
security, Stallings.
Oops, sorry.
Stallings is an important book, standard book on cryptography.
Here, this book is, I like that book by Vopz Arbentoy-Kryptologi,
because there Vopz is emphasizing this duality between designing
cryptographic methods and designing cryptanalytic methods, or
considering the attacks.
Because if you talk about the validity or the security of a
cryptographic algorithm, you always have to look at the way you can
attack that algorithm, and so you always have to look at cryptographic
topics, and also at cryptanalytic topics.
You are looking at the design of nice, secure systems, and looking at
systematic ways of attacking such a system.
Okay, there are many other topics that people have written books
about, which you can look up.
I just have this one slide on that, but there are many more books
available.
Okay.
Do you have any questions with respect to the organizational stuff
that I have just briefly presented to you?
No questions.
Okay, perfect.
Then we can go on to the next part, which is the first real chapter,
and this chapter is still of some kind of introductory flavor.
I'm telling you something about the motivation.
So, what are actually the major motivations, and what are the kind of
questions we have to look at if we look at the Internet?
So, let's look at what kind of things I have set up here.
So, what is the Internet, actually?
So, when we talk about algorithms for Internet applications, we should
know what the Internet is, and there actually is a definition.
There is a definition by the Federal Networking Council, certainly a
North American institution, and they decided on a definition of the
Internet.
So, the Internet is characterized by three major properties, and so it
refers to a global information system, which is logically linked
together.
So, it is an information system.
Let me just briefly take the pen again.
So, we have all kinds of nodes that are there, and they have
addresses.
We have a unique address space.
Every node has a unique address.
This is an important part.
In the early days of those networks that have been built between
computers, many different addressing schemes were developed, and it
was quite complex to find out how to address or how to get actually to
some remote node in some network.
It was not all Internet technology.
It was many different approaches to designing networks of computers,
but the Internet has a globally unique address space.
It's defined by the Internet protocols, actually by the IP, that's the
IP address space.
A globally unique address space, you can address every node in a
unique way.
And, if you have addresses, you should be able to communicate.
So, you need ways of actually communicating between those nodes in a
network.
And, for that, we have a standard protocol.
We have the Transmission Control Protocol, or Internet Protocol, TCP
IP, which is these two protocols, but also a few other protocols
associated to that, and its subsequent extensions, follow-ons.
Actually, currently, there are quite some research projects working on
extensions of the TCP IP protocols, designing new protocols that can
cope with the challenges that are there at the moment to make the
Internet even more efficient and adaptive, but so far, this is still
the major protocol.
So, we know how to communicate.
And everybody can use, like if you design an Internet application, you
know how to communicate, you use TCP IP.
And then, we have the third part, which are high-level services.
Now, that's also an important point.
On every node, we have available the same type of high-level services,
and those services can communicate with each other.
Like, for example, file transfer, FTP.
So, high-level service, which is available on every node.
You can address the service FTP at any node in the Internet.
So, these are the three topics, to have a unique address space, to
have a standard way of communication, and to have a collection of
standard services that everybody can use.
And if you have such a standardization, now you can build applications
on top of that.
So, this is the Internet.
And if you don't have something like that, it's not the Internet.
It might be a nice network, but it's not the Internet.
Okay.
So, Internet, again, is connecting all kinds of resources, all kinds
of computers.
Globally, we have these, like, globally unique address space,
communications, high-level services, and all those devices can
communicate.
Now, it looks as if only computers, desktop computers, would be
connected.
We know that we have iPads, we have smartphones, we have smartwatches,
we have all kinds of devices, meanwhile.
We have all kinds of light switches, we have all kinds of controllers.
So, the major share of the addresses in the Internet nowadays is
addressing not personal computers or computers like those that are
indicated here, but addressing some smart devices.
So, that's the major playground for doing something in the Internet,
all these devices that are penetrating all kinds of areas in our
private and professional life.
Okay.
Again, an informal characterization of the Internet, we have this
globally connected computer.
If they are all connected, it's like one large computer.
So, we have very simple file transfer.
Certainly, you have to look at the latency.
So, if you have a very large file, nowadays we quite often have very
large files, like having terabytes or, if you have a file having a
terabyte of data, it takes some time to transfer that.
The time certainly depends on the bandwidth of the connection lines,
but if you try to transfer a terabyte of data, it takes some time.
And so, you always have to look at the latency.
It's not that easily done to say, I just distribute my applications
all over this network collection of resources, and then I get perfect
service.
For example, if you have real-time applications controlling some
industrial processes or controlling the functionalities in your car.
So, there actually are people who have said, oh, we have to come up
with new technologies for our cars.
We can make our cars more efficient.
There are that many functional components in the car, meanwhile.
And we could move all these applications into the cloud, and then we
can save on the hardware that we have to put in our cars, and just
utilize the networks and the resources that are available in the
cloud.
The problem is that quite some functionality in the car is
functionality that is real-time functionality.
So, if you push your brake, you would like that the effect of pushing
your brake is there immediately, and you don't have to wait for the
next cloud server to be available.
And so, real-time applications are an area where you have time
constraints, and for that, some service from the cloud is not really
adequate.
So, you have to look at the latency that is there.
But, nevertheless, we can do many things there.
We can have large algorithm servers.
We can just use algorithms that are available at some other location.
You don't have to implement that yourself.
So, cloud computing is about that.
So, that certainly has many interesting aspects.
So, cloud computing is really changing the way we do information
processing, but you have the communication overhead, which you should
always consider.
And you have simple use of benchmark libraries for software testing.
You don't have to design your tests all yourself.
You can look at all kinds of resources that are there.
You can scale your information processing, in particular using cloud
computing.
If you need a lot of computers one day, you just use that large number
of computers by renting them as Amazon cloud service.
The elastic cloud computers can be created easily, and then you have a
very dynamic way of having access to computing resources.
So, this is really an important point.
Then you have the worldwide digital library.
All kind of information is available worldwide.
All kinds of journals, books, proceedings, and so on.
The problem is, well, if everything is easily available, what about
the quality?
What about the relevance?
Quite a few people say that electronic journals are not as high
quality as the real journals.
Meanwhile, that has changed.
But it was true that initially electronic journals were just having
articles that were not reviewed as strictly as the traditional
journals.
But this is changing, meanwhile.
Nevertheless, the topic of quality and relevance in such a world is
important.
Once, at a conference, some service was presented by somebody from
Google, and it was for fusing information.
Like information fusion.
That means you can take just data sources from different resources,
different sources, combine that in an easy way, and have new
information, put it on some website where you show certain
information.
Let's say you have information on, that was one example, on how
weapons are registered for certain persons.
You have a catalog of those weapon registrations, typically a topic
from somebody telling something about the United States.
And then you have a map, you have addresses of real people, and you
can easily combine that and have a map where you show where actually
all these guns are located on that map.
But how do you know that this information is correct?
And I asked the person, well, what about the quality of the
information?
Who is actually responsible for the correctness of what you put in
there?
Like you combine very easily information from different sources, and
put it on one page, and now you have provided that information.
Are you responsible for that?
And he said, well, the quality is assured just by considering that
this person who did that spent some time on that, and so he must have
had some idea that this is correct.
So is this adequate?
I don't know.
So information on the Internet is not always the truth.
Very often it is faked, it is not correct.
This is a problem of all this.
It's a perfect chance to have all kind of information available for
us.
But how do we know that what we are reading there is actually correct?
And if we now utilize that information, and get information from there
and there, and put that together, we see nice new results, nice new
effects, it's nice.
But is that actually something which is correct, which is adequate?
So we have to look at these things in a very critical way.
And then there are all these economic aspects.
The Internet is something where the business model was to give
everything out for free, and it's hard to make a profit from that.
So some business models, we know there are all kinds of business
models around there meanwhile, but people had to be creative in the
way they can actually make money by providing information there.
And all the traditional providers of library content nowadays are
having problems because it's not that easy to sell books and journals
and so on in printed form.
Okay.
We have all kinds of worldwide information exchange.
You all know the services on individuals, companies, institutions, and
so on.
You get culture programs, online learning, we have the MOOCs, online
learning, an important topic, I don't know if you have read that there
are some students in Berlin who have created an online university for
the refugees which are in Germany, so that they can actually take
online courses for up to two years and then switch over to a real
university.
And so online learning is an important topic.
All kinds of information, weather forecasts, tourist information, new
services, you know all these things, I don't have to go into those
details, but this is something which actually changed our world quite
significantly.
There are these worldwide communication systems, electronic mail which
more and more turns into a medium which is hard actually to control,
to maintain.
I get that many messages that if I don't answer a message immediately
I don't see it anymore because it's somewhere down in my inbox and I
just don't have a chance to look at mails which are older than me.
And so sometimes I get messages from students where I say okay I would
like to answer to that but if I don't do that right away that may
happen that I don't answer and then you just have to send a message
again and I will try to answer.
Electronic mail is such a multitude of information that it's hard to
actually respond to that.
Telephone services, news groups, social networks, electronic bulletin
boards, video conferences, computer supported cooperative work, all
kinds of document repositories where you can cooperate in a nice way.
And the result of that is that nowadays the distance between
communication partners is no longer the regional or the physical
spatial distance but the communication bandwidth and latency so
sometimes people have more communication with people from other
continents than with people from the next floor.
And so this is very important, changed many things and we also have
this effect that the network becomes the provider of services, all
kinds as a service, all kinds of things as a service, cloud computing
is standing for that way, for those applications.
We have electronic commerce, most of quite a large share meanwhile of
the economy is done to some part in electronic way and we need
appropriate certainly methods to support all this what I have put in
here like we have all kinds of personal shopping agents, advertising,
marketing and so on.
How do you know that what you get there is adequate, you have a
personal agent which should always provide you with the best deal on
some products, how do you know that you actually get the best deal and
that this agent has not been paid by somebody to provide you something
which is a little bit more expensive and then you get, you have to pay
more.
So to control the adequacy of what's happening there is not always
simple.
Then you have all kinds of virtual distributed companies, you can
nowadays easily have a company which is located all over the world,
working all the day in different time zones and so this is also an
important part.
We have virtual universities, I mentioned here the different projects,
we have been working on virtual university in the Upper Rhine area, I
mentioned the Universal Corporation of Informatics Chairs, WWR was the
Wissenswerkstatt Rechensysteme, Nukart was the Notebook University at
Karlsruhe, Euko Virtuale I mentioned, where all kinds of e-learning
concepts, tele-lecturing concepts have been designed.
MOOC actually is not tele-lecturing but online lecturing, you know
what MOOC stands for, Massively Open Online Courses, so my course is
not a MOOC but it is a course which is actually available worldwide
but I don't provide the service that everybody can actually get a
credit for this course.
We had run tele-seminars at different locations where we had a joint
seminar with Heidelberg and Freiburg and so it's all kinds of changes
in the way we actually learn.
And the problem is, like lecturing, like what I'm doing here,
lecturing is to do something, is reading or telling about topics that
have been written up at some places.
The original meaning of Dozent or Vorlesung or Reader, like Reader is
the name of a lecturer in England, Great Britain, is that the
knowledge was written up in books and these books were available to
only a few people and they had to read that to the students to get
them to tell them about all this knowledge.
And nowadays everything is available to all of you.
Is it actually adequate that I read something to you which is
available on the internet?
Or should I tell you something in a completely different way?
So the way we teach should be modified so something like this is to
some extent effective but there are other things that could be done.
There are universities which actually have completely modified the way
they teach by offering something called problem-based learning where
students get problems and they have to solve those problems in small
groups and they have to find out what kind of knowledge they need to
actually be able to solve those problems.
They do that throughout their studies.
Only get problems and try to solve those problems in small groups and
the lecturers, the professors and coaches are just sitting there
giving them advice to some extent but they are not telling them what
actually they should or how they should solve the problem.
They have to find out that by themselves, by looking at all kinds of
resources that are available in the World Wide Web.
So this type of thing would be interesting, would be nice but it would
need a much larger number of people who would actually provide that
service to be a coach for a small group of students.
So for this group here I would need many coaches to do that and we
don't have that.
But nevertheless I think it's good to have this possibility to provide
content of lectures in a different way and that's why I still record
all my lectures, make them available and in some courses we also have
some larger, more extensive learning environment for the material that
is presented.
OK.
Smart energy systems, another topic in this changing world.
Internet of Energy.
Internet of Energy actually.
Some people say OK, we have all kinds of sensors and they are sending
information to some repositories so we have an Internet of Energy.
But you know that an Internet of Energy can only be there if we have a
global address space, if we have a standard protocol and if we have
standard services.
What is the protocol, the standard protocol for the Internet of
Energy?
Is it TCP IP?
Is it something different?
What are the services for Internet, for energy nodes?
What kind of services do we have there?
So we have to develop there standard services, energy related services
in order to actually produce an Internet of Energy.
And it's easily said, but people who say we have an Internet of Energy
usually fall short of actually noticing what they have to do.
They just say OK, there are many information sources and somehow they
are connected, but this is not actually the whole story.
OK, and certainly energy informatics is an area which is dealing with
those topics.
By the way, in November there will be a conference on energy
informatics here at Karlsruhe on the 12th and 13th of November.
Students may participate, certainly you have to pay for that, but it's
a reduced fee.
You're welcome to come to that.
Actually it's called Energie Informatik, so it has a German name, but
the language is English there.
Informatik 2015.
And it has the initial acronym DACH, which is Germany, Austria and
Switzerland.
So it's an initiative from those three countries, actually the energy
related ministries in those three countries and the national
informatics societies to offer that conference.
And this year it is here at Karlsruhe, the 12th and 13th of November.
OK, smart cities, smart things, all kinds of topics that we have to
look at there.
And I did not actually put in here like smart industry or smart
factory.
Many applications.
It is amazing to see how much has actually changed by that Internet
technology.
Some people talk about digitalization of everything.
And the consequence is that the Internet has changed quite
significantly the way we live, the way we communicate.
So I mentioned that already.
The question is, how can we ensure a reliable communication?
Is it that easily done?
How can we avoid undesired messages?
All these spam messages that we don't want to get, but we get them.
How can we, what can we do about undesired communication of criminals?
So in France, even in the 90s it was, I think it was still illegal to
use cryptographic methods unless you would be part of the military
system.
Private use of cryptographic methods was illegal in France.
Some politicians in Germany and North America said that use of
cryptography should be forbidden because only criminals would hide
what they communicate.
And we know that things like reliable contracts, signatures and so on,
authentication, need strong cryptography.
And so if you would prevent that, then you don't have all those
applications.
And so this is just people who actually, like quite recently the
British Prime Minister actually said we should make it illegal to, he
again said we should ban the use of cryptographic methods.
They have no idea what they're talking about.
Because it's just not adequate and it's not feasible.
Because if you look at the way you communicate, those criminals would
communicate, even if they use plain text, they can hide the essential
messages in a sophisticated way.
It has nothing to do with cryptography.
So if you want to prevent communication of criminals, you have to be
very creative, but it's not just by saying we ban the use of
cryptography.
Because we need something like that, like we need cryptographic
methods, for example, to give an answer to the next question.
How can we make sure that the person we communicate with is the person
we think it is?
This is an important point again.
How do we make sure that the message has not been modified?
You get a message from your friend and it has been modified in
between.
You get a contract from a company, you sign it, but it was a different
contract than the one that the company actually sent to you.
How can we make sure that modification is noticeable?
How can we make sure that no one else can read the messages we send?
Confidentiality.
You don't want to send postcards all the time.
How can we transfer and store large amounts of data?
We have large amounts of data.
How can we do that efficiently, such that the data is not corrupted
and things like that?
So these are typical questions that arise there.
Then, we have...
Sorry, I have to briefly...
So,
we continue.
So, the way we search for information has changed, definitely.
We have search engines, we have Wikipedia.
Can we actually rely on what's written in Wikipedia?
I mentioned that already.
We never know what's actually adequate.
Newsgroups, job markers, electronic journals, this has changed.
But, how can we search efficiently, effectively?
How can we identify relevant information?
What about the quality of information?
What is the price for information?
Does it cost something?
Are we willing to pay for getting information?
Or, if we get something for free.
Like, if you get a service and you don't have to pay for it, then you
are the product and you are not the customer.
Yeah, this is something, somebody said that recently.
I think it's true.
If you get something for free, then you are the product.
Because you are used, you can only get something for free if somebody
else can utilize that.
And so, you have to be aware of that.
If you get something for free, then there must be some interesting
information to you and utilize that in some way.
There's always this danger.
So, if you pay for something, then you are a customer.
You can ask for some quality.
Okay.
How do we protect intellectual property?
Important point.
What are the consequences of the Internet for politics?
Also an important point.
To what extent does this change the way we actually organize our
states, our administration, our representative way of having
democracy?
There have been representatives, like members of parliament, who asked
or who offered the people in the electorate to actually participate in
discussions on how to phrase a certain law or whatever.
To participate more in what they have been discussing previously only
within the party and within the parliament.
And they really ran into problems because that was not what was really
intended.
That everybody can do something there.
But we know that, like we had the party of the pirates.
They were based on this idea that everybody is communicating there and
participating in the way the political programs were set up.
But it was not successful.
And we definitely have more influence on what's happening there.
But it's also an interesting area for shaping new ways of doing or
governing a country or being a member of parliament, participating in
the way we actually organize our community.
The way we shop has changed significantly.
You know all that.
And the question is, how can we pay electronically?
How can we remain anonymous?
If you go to a shopping mall, you can look at all the things that are
presented to you there in all the shops, but you are not registered
normally.
Unless they have all kinds of cameras there.
But if you go into a virtual shopping mall, you are registered.
Everybody knows that you have been there.
But how can we remain anonymous?
If we pay with cash, nobody can see from the cash that you have
provided that cash, that you have paid with that.
If you have electronic means of payment, if you look at the credit
card payments, everybody knows, or at least the companies who organize
their credit card payments, they know who has paid what, at what
location, and so on.
So that's far from being anonymous.
How can we find the products we want?
We know that we look for products all the time when we want to buy
something, but how can we actually make sure that we get the best
information?
How can we do that in a certified way?
What kind of functionality?
Sometimes I notice those mistakes at some later time only.
These are typical questions.
The way we compute also, like grid computing, SETI at home.
Who of you knows SETI at home?
Are you part of that?
No.
So SETI at home is on searching for extraterrestrial information, and
there the spare time or the unutilized time of your computer can be
used for actually analyzing pieces of data that have been recorded
here, information that's coming from outer space.
And these signals, it's a multitude of information, and people are
looking for intelligent information, intelligent patterns.
And so this data is just distributed worldwide to people who are
willing to participate in this search for extraterrestrial
intelligence, just by using the idle time of computers.
A nice idea, some kind of worldwide grid computing.
Cloud computing, you know.
Green IT, also an important topic.
Green IT means we look at ways how we can reduce the energy
consumption of information processing.
Meanwhile, quite some share of the energy consumption is going on
information processing.
We have to find out ways of doing that at a more cost-effective or
energy -saving way.
Question then around that is, how is the computing power distributed?
Where actually do we provide the computing power?
Do we have large computing centers?
Do we have a multitude of small ones?
How do we protect against faulty or malicious data?
Like the computing center here, the SEC, is fighting malicious data
quite a significant part of their time.
How do we ensure interoperability of different platforms?
How can we protect ourselves against access from others?
We know that we had all kinds of certificates that certain data
repositories would be completely protected against access from others,
but some nevertheless had access, and it's a question how that can be
controlled.
Okay, so we know that the Internet has changed many things.
Algorithms make the difference.
We need methods to cope with those problems, and that's what this
course is about.
So we have a few more minutes today to start that actually in the next
chapter.
It's about basic and some advanced algorithms for Internet
applications, and I always hope to be up to the most current
technologies there, but it's not always possible.
We can only address a small part of the large number of questions I
addressed here just now, and I'm always glad to get your feedback.
If you have feedback on what we should include there, I will do that,
although this course will not be offered that many times.
It will be offered this term, it will be offered next winter, and
after that, like in the fall of 2017, I will retire, and I don't know
who will actually be my successor, and that will be clear by that
time, but it is unlikely that this course will continue to be offered
as I do it.
So you will still get that service, but others who come too late can
do that next year, and then it will not be offered again.
So that's this brief motivation on why it is so interesting to look at
those topics that we have in this course here, that we have in the
Internet.
So let me start already with the Chapter 2, Internet History and
Technology, and this will look at quite a few topics having to do with
history and technology.
So, you know, if you have questions, you should just put up your hand
and ask questions.
Sometimes I'm talking quite fast, but just stop me if you want to
interrupt and ask questions.
So we already have seen this definition.
Internet is this global information system having the address space,
the protocols, and the services, and so let's look at how that
actually evolved.
There are many interesting things that happened in the history of that
Internet.
The actual start of that, or the initial event that started the
project that resulted in the Internet, was the start of this Soviet
space element, Sputnik, in 1957.
And the U.S.A.
got afraid that there might be weapons on those satellites, and they
have to prepare for attacks from outer space from those satellites,
and make sure that they have a network of devices, of information
processing centers available, which in some way can communicate in a
very robust way.
Even if one of those nodes gets destroyed, the others should still be
able to communicate and continue to work.
And so that was like the United States established the Advanced
Research Projects Agency, ARPA, which meanwhile is called DARPA, the
Defense Advanced Research Projects Agency.
That's an important cultural difference between research actually in
North America and in Europe, and also in Asia.
In North America, research to quite a far extent is financed by DARPA,
by defense money, money that is invested on getting technologies that
can protect the country.
That's the major motivation there.
And in Europe, we are reluctant accepting money from military
institutions or from the Defense Department.
We are more on civil money for that.
We are having this discussion on restrictions or not to do research
for military purposes.
That's no topic in North America.
So ARPA was this Research Projects Agency in 1962.
So some years later, there was a report on ways of maintaining control
over missiles and bombers in case of a nuclear attack.
And the idea was to have a military communication network allowing a
second strike even after the complete destruction of several nodes or
cities.
So the central idea was packet switching.
And because packet switching means that you don't need a stable
connection between two points, but you can send packages over a
network.
And those packets can travel along there.
And even if one link is missing, the packets will just take another
route and get to that location, to the address, to the destination.
And so the idea was to split messages into packets and send and
forward packets in the network until the destination address has been
reached.
That was the major idea of that time.
And so then a few years later, you see it always takes some time, then
they decided to build the ARPANET.
And in 1969, the first four universities were connected by this
ARPANET.
University of California at Los Angeles, the SRI Research Institute at
Stanford University, University of California Santa Barbara, and the
University of Utah.
Four hosts.
They had backbones of 40 kilobits per second.
Not very much, but it was the start of ARPANET.
And then this was extended from that.
In 1972, we had the first email program designed by somebody from BBN.
BBN is a company which is still active, doing mainly military-related
research, but many, quite a bit in information technology.
ARPA became DARPA, and there, at that time, they had a network control
protocol.
They didn't have TCP IP at that time.
They had the network control protocol.
In 1972, so three years after the start, they had 23 hosts, mainly
universities.
Like, they don't talk, like in this history recordings, they don't
talk about the number of nodes that are of military nature.
Definitely, there would have been military nodes, but I have no idea
how many there would have been.
We only know something about the civil or the public nodes there.
In 1973, Vint Cerf and Bob Kahn designed the TCP IP protocols.
So that actually was an important starting point.
And one year later, the first time the term Internet was used, by Vint
Cerf and Bob Kahn.
So that's actually, you could say that's the origin of the Internet,
because it was the protocol, was designed, and they used that term
for, or in their paper on the transmission control protocol.
And you must imagine, at that time, there were around a hundred nodes
in the network.
And they designed a protocol for communication between those nodes.
And this protocol is still working on billions of nodes.
So it was really an ingenious way of designing such a network, and
such a protocol.
We will look at that in more detail a little bit later.
Then in 1976, what did we have there?
Well, the communication lines were extended.
They had a satellite network in addition to the real cable network, in
order to have links between USA and Europe.
And then some other protocols with their UUCP, but it's not that
relevant actually.
111 nodes in 1976.
Then in 1979, there were Usenet and Bitnet.
Bitnet has nothing to do with bits, but because it's a time network,
founded by IBM.
And they had something called Theorynet.
Theorynet was actually used for email, for list servers, and was used
mainly in the community of theoretical computer science.
It's funny that the theoreticians actually made heavy use of
communication using those technologies.
And you see, this is just developing more and more there.
81, 213 nodes.
And then in 83, TCP-IP.
You see, 83, TCP-IP became the standard protocol of ARPANET.
73, 10 years before that, Cerf and Kahn designed that protocol.
A year later, they published a paper on that.
So, it took 10 years before that actually became the standard protocol
in the Internet.
Like at that time of the ARPANET.
And we actually got something which was very beneficial for us, the
European Academic and Research Network, the ERN, funded by IBM.
IBM certainly wanted to use that technology, which they got used to in
North America, also in their other parts in Europe and all over the
world.
And they said, okay, in Europe they don't have that technology, so we
just provided it to them.
And they provided the European Academic and Research Network for their
own purposes, but made that available also to the universities.
And at that time, well, I actually, in 83, I was in Canada as a
visiting professor, visiting assistant professor at that time.
And I used all those technologies already, used news groups and email
and things like that.
And I came back to my university far up in the north of Germany.
And they said, well, you want to have an email address?
What do you need an email address for?
You have a telephone.
And you can write letters.
And you want to send messages over the network?
Computers are there for computing and not for writing letters and
things like that.
And so then the German Research Network was created, Deutsches
Forschungsnetz.
The major purpose was to allow for remote access to computing
facilities.
It was not for communication.
Very different attitude.
And the world has changed quite a bit.
Okay, let me stop at this point.
I will continue with the history next week.
Thank you.