Oh! Singtel, what the hell?

‘Sheer Incompetence’, ‘Utter Arrogance’ and ‘Complete disregard’ towards customer needs are the terms which I can think of right now to describe what Singtel is doing to me. As you might have probably guessed by now, this is yet another story of bad customer care and one more example which illustrates their arrogance and negligence towards the customers. I am thinking loud, “Is it just me or is it like this for everyone in Singapore?” I am not talking about some third world country where connectivity is a ‘not-so-heard’ term. I am talking about Singapore, one of the world’s most efficient countries.
It all started when I decided to relocate. I knew from my past experiences that transferring my internet connection will be one hell of a ride. So I decided to start a bit early. I called the Singtel customer care hotline (1688) three days before I was to move in.
Day 1 – 1 day. (Dec 16th, After waiting 5-10 minutes in the waiting queue which is there for all the calls)
Me: Hello, I am relocating house and I need you to relocate my internet and phone connection.
Reply: Sure sir, what is your address? And what is your postal code. We need the postal code, without that we cannot process a relocation request.
Me: I am sorry, I am not sure about the postal code as of now. I will give you a call after checking it out.
Day 2 – 3 days. (Dec 18th)
Me: Hello, I am relocating house and I need you to relocate my internet and phone connection. Here is my address and the postal code.
Reply: Thank you sir, we just need the address to check it.
Me: (Thinking: what the hell?)
Reply: Hi sir, as of now there is an existing connection in this address you gave us. We will have to do a rewiring for you and for that you need an appointment. As of now, you’ll have to wait atleast one month for a rewiring appointment.
Me: OMG! Please tell me whether there is any alternative.
Reply: First you have to terminate the connection and give us a call. I will put your name for an appointment now. After you terminate the connection let us know, we will activate the phone line and you have to do the self configuration.
Me: That’s ok, configuring the router is not a problem.
Reply: Also sir, you won’t be able to retain the present phone number. I will give you a call later with the probable numbers you can choose from.
Me: It’s ok, I don’t really care about the number, I only need the internet connection.
Later that day, she did give me a call and I choose a number. She said that she will log everything in the system so that after termination, I can call them again for activation.
Day 3 – 6 days. (Dec 21st, I communicated with the owner and he terminated the existing connection)
Me: Hello, I am relocating house and I need you to relocate my internet and phone connection. I hope all the details are already logged in the system. You can do the activation as soon as possible from there.
Reply: Hi, who am I talking to again? I am really sorry to tell you that nothing about you have been logged in the system. Could you please give me your info?
Me: Ok, here is my details…
Reply: What is your new address with postal code?
Me: (Thinking: Holy God! Is this really happening again?) Hey my dear fellow, I have already given all the details.
Reply: Is it so? Then do you have a telephone connection in your new place already?
Me: There is a socket there.
Reply: Do you know whether its active?
Me: How am I supposed to know that? You are the person to tell me right? I already talked to a customer care officer and the person I talked to, said that activation can be done from there.
Reply: Sorry sir, I don’t know what you are talking about, Click! (And the line went dead)
I dialed again.
Me: Hello, I am relocating house and I need you to relocate my internet and phone connection. Please someone tell me what is going on. I already have done everything and now someone is telling me nothing has been done. What is going on?
Reply: Hi sir, all your details are logged in the system. You have an appointment for rewiring one month from now.
Me: I don’t need rewiring, the existing connection is terminated. You can activate it from there, if possible today itself.
Reply: Sorry sir, we can activate it, but it will take 3 days. You can have the phone line up and running by Dec 24th 5 pm.
Me: If there is some problem, then I will be able to get after 26th right? (‘cos it is the holiday time)
Reply: I am afraid so sir.
Me: Ok, so I am expecting to get a dial tone in my phone by 24th 5pm and no one will be coming for my assistance right?
Reply: That’s right sir, you have to do it on your own. If there is any problem, you can call our technical help desk or take another appointment.
Me: Thank you very much.
Day 4 – 9 days: (24th noon, during lunch @ office, I got a call)
Caller: Hi sir, I have an appointment to rewire your apartment.
Me: Who? What? When?
Caller: I want to check when you will be available?
Me: Are you really calling from Singtel?
Caller: Yes, when do you want me to come?
Me: Ok, I’ll get out of office early today and you can come by 5pm.
I am waiting for the caller and I called the customer care to clarify.
Me: Hello, I have already given a relocation request and the deadline given to me was 5pm on 24th Dec. But there is still no dial tone in my phone.
Reply: Let me check sir. Hello sir, according to our system, your connection is already up and running. Have you tried configuring your router?
Me: There is not even a dial tone in my phone and how am I supposed to configure a router?
Reply: You can try that sir. But then again, this is the sales dept sir, and for configuration enquiries, you can call our technical help desk.
Me: ok thank you. (You guys sux)
After some time the rewiring guy came. He said that he is here is rewire my telephone line. He poked around with the telephone line and some boxes and he also made some calls to his office (at least that’s what he told me)
The guy: I am really sorry sir, they did the wrong wiring at the exchange. So we have to do the rewiring. It will be up tomorrow first thing in the morning
Me: I really need this before the holidays, and are you sure you’ll give me this tomorrow?
The guy: oh! Sorry sir, I forgot that tomorrow is a holiday. We will do it tomorrow first thing in the morning and give you a call in your mobile and landline.
‘Tomorrow-first-thing-in-the-morning’ is over, afternoon is over, evening is over and the next day is over and at noon, I got fed up. And I decided to call again.
Day 5 – 11 days: (26th morning, From this point onwards, I had to explain my whole story till now which takes around 20 minutes plus the waiting time which is around 5-10 mins)
Me: Hello, I am relocating house and I need you to relocate my internet and phone connection. The technician who came to my house told that he will fix the internal problem and didn’t call me back till now. I am still waiting and there is no dial tone in my phone.
Reply: I will put you for another appointment sir.
Me: Now way I am going for another appointment, get me someone who can help me right now.
Reply: I will transfer this call to the technical department sir.
Reply: (from technical department) Let me check this sir, (put on hold). Hello sir, I have checked with the telephone department and they say it will be working by today 5pm. You can start using you phone by then.
5pm is over, 6pm is over and I called again to the technical department.
Me: I am supposed to be using my phone by now, but I believe I can’t do that without a dial tone.
Reply: (After all the explanations and clarifications and holdings for around 30-40 mins) I am really sorry sir, right now, the sales is closed and all I can do is to escalate this issue to the sales department and tell them to contact you first thing on Monday morning.
Day 6 – 13 days: (28th morning, first thing in the morning, I am calling them)
Me: Are you planning to give me my phone connection any time this year?
Reply: Sir, this is the sales, as per our records, your connection is up and working fine from 24th evening, I will transfer this call to the technical department.
After 20 – 30 minutes of explaining my whole story
Reply: Let me put you on hold sir. (After 20 minutes on hold) I have updated this with the technical department sir.
Me: So am I not talking to the technical department?
Reply: You are talking to the technical department for the internet and TV, the telephone is another department sir.
Me: Ok, so what can you do about this now? May be if you can track down the technician who promised me the phone line ‘first-thing-tomorrow-morning’, you can know what happened actually.
Reply: The only thing I can do is to get you another appointment tomorrow between 11-1pm (for which I may have to take off tomorrow from work) and I have specifically told the operator not to leave your house with your giving you a working telephone line.
Me: Thank you very much. Hope this story will be ending once and for all tomorrow.
And the above sentence happened around 30 minutes before I write this. I am waiting for all this to end and to get a written statement from the technician or whoever it is, that my phone was not working for half a month after I raised my relocation request. Let me see whether they will reduce this month’s bill to half. If I delay the payment of my bill, they fine me. Then they should reduce my bill to half if there was no service for half the month because of their fault.
Is there anyone out there from Singtel - I don’t care – who it is, who can explain all these? This is only about my Singtel internet connection and my mobile phone carrier is also Singtel. Don’t get me started about it. So, now my readers may wonder why I am still sticking on with this connection. That is ‘cos I signed a two year contract with Singtel which ends only in 2011 and I have already given S$400 as advance. So I am stuck with this “fill-in-the-blank-as-you-wish” operator for one more year. Now I know, even in Singapore (which I thought is a flawless country) there can be flaws.
Once again, “Is it just me or is it like this for everyone in Singapore?”

EE5902 Multiprocessor Systems Qn. Paper

Subject: EE5902 Multiprocessor Systems
Department: ECE Dept, NUS
Semester I, AY 2009-10 Question Paper

Here I go again. My second exam for this semester also didn’t have previous year question papers published. Remembering the questions this time was a bit tough as it contained 20 one word type questions. I have somehow managed to remember bits and pieces of up to 16 questions. The rest, I hope my friends will help me. If you have attended this exam and have any comments about this post or if you know any missing questions, please post a comment. Please don’t mail them to me. I don’t need them. I am doing this in the hope that I may help some students in the upcoming batches. If you find this helpful, please leave a comment so that I know I have helped someone. Thanks to my 2 friends who helped me in remembering these questions.
Q1. [These questions are not in the order in which they are asked. I am putting the questions I remember in the order I jot down them right after the exam]
1. State only the correct statements
a. [Don’t Remember]
b. Data parallelism is not scalable [Something similar]
c. [Don’t Remember]
d. Control Parallelism is not limited by pipeline length
The correct statements are __________
2. [Summation]j,k [Summation]j,k(aik + bik) Computations like these are best suited in __________
3. Write a typical RT for a CV 1011 in the space provided (page 278)
4. __________ level parallelism is prohibiting the increment of factor k for a k-issue superscalar architecture
5. Baseline network has only one path from input to output (T/F)
6. For a superscalar processor of degree m and n instructions, as n tends to infinity, the speed up factor becomes __________ (notes chap 6, page 55)
7. Pentium is RISC in the higher level and computes CISC operations in the inner core level (T/F) (Notes Chap 3, slide 30)
8. If hit ratio of level Mi of memory is pi, the expression for access frequency for Mi __________ (Notes Chap 3, slide 69)
9. If the number of processing elements are between 1024 and 16384, it is typically considered to be a __________ (page 32)
10. If the time complexity of a problem is of O(2^n . n^2), it is clearly of polynomial complexity (T/F) (page 34)
11. What is the time complexity of the expression () [Forgot the exact expression]
12. MAL is greater than or equal to maximum number of check parks in the RT and less than or equal to the average latency of any greedy cycle. Also the average latency of any greedy cycle will be one greater than the number of ones in the initial collision vector. So, MAL is greater than the number of ones in the ICV. Point out what is wrong with this statement in the space provided below.
13. Non-linear pipelines and the reservation tables have a many to many mapping (T/F)
14. Loop level parallelism is considered to be __________ grain with less than 2000 instructions (Page 61 and it was given 200 instructions, not 500)
15. Power is proportional to the square of the frequency in embedded processors. (T/F) [Not sure about this statement, but it was relation between power and frequency which is given in slide 40 in the first lecture]
16. [One problem with coming up with an expression with some T1, T2, T3 and T3 and E1, E2, E3 and E4 for something. Don’t remember, I didn’t get time to look at this as this was the last question in the set]

Q2. We have a system with cache and memory. The cache capacity is 8 blocks and each block is one word. We have a 4 x 10 array, X(i, j) which is stored in main memory from address 7A00 to 7A27 in a column major fashion. (7A00 contains X(0, 0), 7A01 contains X(1, 0) etc). MM is also word addressable. The following program is executed

TOT = 0
For j = 0 to 9, do
TOT = TOT + x(0, j)
End do
AVE = TOT / 10;
For i = 9 to 0, do
X(0, i) = X(0, i)/AVE; /* Normalizing all the elements in the first row */
End do

Run the LRU algorithm on the above code for both the following scenarios
(i). Direct Mapping
(ii). Associative Mapping
Draw the mapping diagram also.
Hint: The memory is in hex [and some more, which I don’t remember]

Q3. A computer architect wants to connect 8 processor nodes to 8 memory modules using an MIN. He/she decides to use a baseline network, but wanted to have more connections from input to output and decided to have 5 stages. The first 3 stages – stage 1 to stage 3 – is done as normal self-routing network. Then from stage 5 through stage 3 is also self-routing network. For e.g., if we partition the whole network into two parts around stage 3, we will get exact mirror image. For this network, answer the following questions,
a. Draw the above stated network
b. How many paths are there for a given input-output pair
c. Device a strategy to route a given input node to an output node
d. A processor connected to the first switch in the first stage, P(0) is connected with memory module in the last switch in the last stage – M(7). Now the processor P(3) wants to connect to M(3). Show how the connections are reconfigured for the above design (qn. Q3 - c)

Q4. (Same question as problem 6.13 in text) For the same 4 pipelined stage in Qn 6.13,
a. Specify the reservation table
b. Find the collision vector
c. Draw the state diagram and mark the transitions

Q5. Formulate the differential equations for the reliability model for memory with state diagrams and with full equations (Same question as the reliability model for memory in notes)

[---- Questions Paper Ends Here ----]

Some doubts I had during my preparation for this exam. There are more which I never wrote down and now I don’t remember them. I had all these doubts by the end of my preparation which was just before the exam, so I didn’t get time to clarify them.

Qn. 19 in self test. The answer given is False. But in the text page 55 says “Bernstien’s conditions simply imply that two processes can execute in parallel if they are flow independent, anti independent and output independent”. Does it directly contradict the answer or is it ‘cos it doesn’t say anti-independence?
Qn. 28 in self test. The answer given is CRCW, but in text page 37, 38, it is clear that the ‘uncommon’ type is ERCW.
Qn. 43 in self test. “All processors need not be executing an instruction concurrently in a MIMD machine”. The answer for this one says False as per the self test answers, but the qn no. 10 in the qn bank “In a MIMD computer, all processors must execute the same instruction at the same time simultaneously” which is given as False too, directly contradicts this.

Page 346 in text. The input to the switch from both p1 and p2 shows e1 as the increment factor. It should be e1 and e2 right?
Can we consider pipelines as a MISD stage or a systolic array. Cos they are multiple fn units acting on a single data stream with specific function. In linear pipelines, the stages cannot be programmed. But in non-linear, different stages can be programmed also right?
In the Pentium, why do we need 2 bits for the history in the BTB? We need only one bit right?
Qn. 29 in self test, given a CV, how can we uniquely say the number of pipeline stages in the RT? Even is no stage is left unutilized in any cycle, the m of the CV will be less than n-1 right?

Some points I wish to note here, (just like my previous post)
1. I am not sure about the answers of the multiple choice questions and that is why I have given pointers to the page where they are mentioned.
2. There is no guarantee for any of these questions to be exactly the same as seen in the question paper. I simply wrote down what I remember after the exams.
3. I am publishing this the next day of my exams and so I don’t know the results, yet.
4. Please don’t send me mails asking for answers, please post comments in the comments section so that someone else may answer.

EE6902 Computer Communication Networks Qn. Paper

Subject: EE6902 Computer Communication Networks
Department: ECE Dept, NUS
Semester I, AY 2009-10 Question Paper

I wanted to do this from last semester onwards. There are some modules for which the previous question papers are not released by the department. I wanted to write down the questions and publish them. Maybe it will help someone in the coming semesters. Since I had back to back exams last semester, I was not able to do it. This semester, I have taken the module called computer communication networks which comprises mainly the fundamentals and concepts. The previous year question papers were not released and I and my friends wondered how to prepare for the exams or how the pattern of the questions may be. That’s when I decided this year I am going to write down and publish the questions as I remember them. I and my friend made small notes of the questions after the exam itself and now I made it to a better form.

If you are reading this for your exams, all the best and perform well. If you have attended this exam and know the missing questions or if there is anything to add to this blog, please do so by leaving a comment. If you find this ‘venture’ helpful, do leave a comment. After all, it feels good to know that I have helped someone. Special thanks to my friend Dana, who helped me a lot for my exams, without whom I would not have made this blog possible or even study well for the exam.

Some Notes:
1. There is no guarantee for any of these questions to be exactly the same as seen in the question paper. I simply wrote down what I remember after the exams.
2. Even though I answered most of the questions, I am not sure about the answers and also I am too lazy to write down the answers. As our professor says, give it a try.
3. I am publishing this the next day of my exams and so I don’t know the results, yet.
4. In the end of the questions, the symbol © doesn’t mean copyright. All copyrights are with the professor or the university (or with whomever it is). It just means ‘courtesy’. ;)

Newly Added
I am posting the answer for the question 2 here. This answer has been sent by my friend Ganesh. Thank you very much Ganesh :)

Google: The real Skynet?

I wouldn’t be surprised if one day I hear Google has taken over the world or is going to be the ‘Skynet’ or the ‘Supreme Chancellor Palpatine’ of earth. I have heard stories about identity thefts or conspiracy theories like the CIA tapping personal information like bank accounts, phone records and not to mention the number of movies on this theme. Till recently I believed this is possible only for a high profile security agency or for an expert hacker. Only till I saw Google dashboard.
I read about Google Dashboard in a technical article two days back. It says “I already knew that I use a ton of Google services and they know a lot about me, so seeing it all in one place was more entertaining than scary”. I too didn’t expect it to be this scary. When visited the page, I felt like discovering me all over again and found out many thing which I never noticed doing before. Dashboard contain all the information about my Google account, Gmail account, Blogger account, calendar, contacts, docs, finance, social networking, latitude, search/web history, wave and the list goes on and on. Any person who can log in to my Google dashboard can easily get to know me, even more than I know about myself, like my account details , my schedule, my contacts, the documents I was working on, my financial portfolio, my friends, my location and even I do daily in the internet.

Video about Google Dashboard
I also knew that Google ‘knew’ many things about me. But seeing all of it in one location is scary. I know people who store confidential data like their bank account numbers, passwords etc in their Gmail account because they ‘know’ it’s safe and globally accessible. But, all one need is a simple password for your Google account and the consequences can be disastrous. The extra level of protection offered by Google is asking your password, one more time.
On the positive side (for Google lovers), dashboard is one big help. There is now a single place where you can manage all your Google accounts with easiness. Also, it provides a simple solution to find out what we are doing in the internet.
No matter whether you think this is a boon or a curse, it really made me think how much personal information I can safely put in the internet, if I am concerned about my privacy.

Designing a logo

I do bits and pieces of painting/drawing once in a while and I love almost everything that had anything to do with computer graphics. Electronic games are my weakness, but that’s mainly from a user point of view. Other interests are graphics programming, designing etc. Creativity has its own advantages. You can create, destroy or modify almost anything you want. More than that, I like playing God. So I jumped right in to the opportunity to design a new logo for our organization and my logo is selected as the new official logo.
Our organization - ARL - was on the process of revamping its website and the employees were given the choice of coming up with a new logo. We were free to come up with anything. No bounds were there. But it had to be agreeable to others in the lab. The main factors I had to keep in mind when designing a logo was that it should be easily printed on paper (in color, gray scale and black & white) as well as clothes (embroidery), stationery items like mugs, pens, plastic etc. Also the colors should stand the test of time and space (stretching, different media etc).
In the beginning, I was not sure whether I could do it. Finding the starting point was my main challenge. I had to formulate and idea and then start off from there. I kept thinking about it for some time and decided that I will start from where my predecessor stopped - the old logo. My plan was to rebuild the old logo first, may be with minor modifications in phase 1 and then add any new ideas as it comes along my way.

Old Logo
I looked at the old logo and asked myself, what are the key elements in there and what can I do to make them look better. After some thought and discussion with my professor, I decided to concentrate mainly on the following.
1. Make a new earth with glossy surface and a good reflection (inspiration: windows vista aero interface)
2. Make the bubbles, bubblier.
3. Decide whether to retain the waves or not. If retaining, try a different look. (The shell & waves are adaptation from the TMSI (Tropical Marine Science Institute) logo, to which ARL is affiliated to.)
4. New fonts for ‘ARL’.
I started with the earth part. The only tool I have used for the whole process is Adobe Photoshop. (Both ver. 7 and CS4). I searched the net for tutorials for a glossy globe and found this one.
And that’s from where I started. The result of my first experiment looked like this.
Ok, now that I have a place to start from, I started playing with other factors like the bubbles, fonts, waves etc. Some of the tutorials I have used are given in the reference section. I downloaded custom brushes, fonts etc. My reconstructed logo, with new bubbles and font, but without the waves looked like this.
Ok, phase 1 is over. Now for the next phase, I wanted ideas, something that everyone will notice from the previous logo, at the same time, retaining the key elements of the old logo. That’s when I noticed the color combo of NUS website. Orange, blue and white. That’s from where I got the idea of using different colors. Ok, orange and blue, one of my favorite combos and at the same time, a theme which goes along with NUS website theme also. I had to start the logo all over again. The result looked much better than the green one (from my point of view).
I also had to create the ripples that originate Singapore. For that I found many methods/tutorials, but none was getting close to what I wanted. Then my professor sent me a link to try and voila! It worked. Also it was he who suggested keeping a simple font.
The result of my earlier experiments looked like this.
Another of my experiment with waves and without ripples resulted the following.
I ignored the idea of waves in the beginning itself as I was not able to do a nice work and it’s a bit difficult job and I was too lazy for that.
The above logos were used to collect feedback. Some of the main feedbacks received were, the ‘ARL’ text is not proportionate to the size of the globe, the gradient color scheme is difficult to do embroidery on t-shirts, the ripples are too small, since the ripples are there in the land, it given an impression of tsunami (We wanted the ripples to represent acoustic waves - showing the relation to our research domain) etc.
I redesigned again and came up with the final logo with bigger ripples explicit to the blue region (water) and a bigger single color ‘ARL’.
Final Logo

And that’s how this logo was born. Different versions of logo were made with different sizes, background (alpha channel), color/gray scale etc.
I never thought I will end up with this logo when I started. But when looking back, I feel great about this project. Special thanks for my professor who helped me from the starting point till I finished this project, with valuable advices and suggestions.
Along with the logo, I have also designed a simple map to reach our facility which you can find in the ‘contact’ page in our website. It was real fun making it.

References and tutorials which helped me in designing the logo
Glossy Globe
Text Effects

Additional references and tips
Layer Masks
Custom Brushes
I am not an expert in photoshop, but drop in a comment if you think I can help you with photoshop.

CHOKe - A stateless active queue management scheme for approximating fair bandwidth allocation

I had to do a literature/paper review as part of one of my courses (EE6902 Computer Communication Networks). I selected a queue management algorithm for internet routers which is R. Pan, B. Prabhakar and K. Psounis, “CHOKe: A stateless active queue management scheme for approximating fair bandwidth allocation”, IEEE Infocom 2000. It is a very interesting paper considering the fact that it was published nearly a decade ago. This is one of the very few ideas I have come across and thought, "Why haven't I thought about this before?" I am not attaching the whole paper here (it’s around 20 pages), but the summary part of my paper review. In a nutshell, I my review is “This is an excellent research paper in all aspects such as the organization of the contents, quality and quantity of the content. One can easily deduce both by reading the paper and by looking at the later works that are based on this paper, that this paper is the result of an extensive and painstaking research and also an important milestone in this field.

1. Introduction
Congestion control has always been a topic of interest among network designers and engineers. This paper proposes a simple and elegant method of implementing congestion control in internet routers which incorporates both fairness and simplicity. The main motivation behind this work is the need for a simple stateless algorithm that can achieve flow isolation and/or approximate fair bandwidth allocation for internet routers.
The authors start off by presenting the difference between responsive and unresponsive flows and different models for congestion control. During the time of congestion in a router, a responsive flow (TCP based) adjusts its rate automatically where an unresponsive flow (UDP or a bad TCP implementation), will be impassive to the conditions in the router and aggressively use up more bandwidth than responsive flows. This shows the need for fairness while choosing a packet to keep/drop during the time of congestion.
The models for congestion control fall broadly in to two categories. 1. Scheduling algorithms and 2. Queue management algorithms. The scheduling algorithms drop packets depending on the state information of each flow stored locally and therefore results in a fairer bandwidth allocation. But they are expensive to implement in terms of computational complexity and storage required and naturally doesn’t scale well. Various implementations are Fair Queue (FQ), Core Stateless Fair Queuing (CSFQ), and Stochastic Fair Queuing (SFQ). The queue management algorithms are stateless and are simple to implement at the expense of fairness. The main algorithm in this category is Random Early Detection (RED) [2]. Even if RED solves some of the issues with drop tail mechanism, it doesn’t provide fairness among responsive and unresponsive flows. Other variations are RED with penalty box, Flow RED (FRED) etc which requires partial state information and Stabilized RED (SRED) which identified misbehaving flows but doesn’t provide a mechanism to penalize them.
CHOKe (CHOose and Keep for responsive flows, CHOose and Kill for unresponsive flows) proposed here incorporates fairness similar to that of scheduling algorithms while keeping the simplicity of a queue management algorithms. When a packet arrives at a congested router, CHOKe draws a packet at random from the queue and compares it with the arriving packet. If they both belong to the same flow, both are dropped, else the randomly chosen packet is left intact and the arriving packet is admitted in to buffer with a probability of p (calculated in the same way as in RED). 2 main ideas drive the usage of this technique. 1. The likelihood of the randomly chosen packet belonging to a misbehaving flow is high. 2. A packet belonging to a misbehaving flow is more likely to trigger a comparison since they arrive more frequently.

2. CHOKe Algorithm
CHOke marks two thresholds in the FIFO buffer, minth and maxth. The algorithm is self-explanatory from figure 1.

Figure 1: The CHOKe algorithm
In general, one can randomly choose any number of packets from the buffer (drop candidate) for the comparison (m ≥ 1). CHOKe’s performance will increase as m increases especially when there are multiple malicious flows. The selection of value of m can be automated by having any number of intermediate thresholds and choosing different value for m depending on threshold (linearly).
The implementation details are also discussed and showed verbally that only a small overhead is associated in implementing CHOKe as compared to RED.

3. Simulation Results
A standard network configuration is used to test the performance of CHOKe and compare it with RED and Drop Tail mechanisms as their complexities are close to that of CHOKE. The simulation results are presented in 3 parts: single congested link, multiple congested links and multiple congested flows.
As expected, CHOKe outperforms RED and Drop Tail in UDP throughput comparison where the latter 2 doesn’t discriminates against unresponsive flows. The throughput per flow of CHOKe is also shown where the TCP throughput reaches near the ideal fairness values. Other simulation results presented include performance under different traffic loads and queue distribution under different loadings. Similar simulation results are presented for other 2 parts.

4. Analytical Models
In this section, the authors analyze 3 different versions of CHOKe. 1. Original CHOKe, 2. Front CHOKe (drop candidate is always the packet at the head of the queue) and 3. Back CHOKe (drop candidate is always the packet at the tail of the queue). The second and third variations are used because of the difficulty of analysis of the original model.
Both the models assume independent Poisson arrivals and independent exponential service times with a FIFO queuing discipline. The models depend on the PASTA property to arrive at the results. In the case of front CHOKe, the throughput with 1, 2 and 3 flows are calculated from the analytical models and are presented along with the simulation results which are almost identical. In the case of back CHOKe, they use Markov chains to find the stationary distribution, πi. The throughput for various flows calculated from the mathematical model is presented.

5. Conclusion
The paper proposes a packet dropping scheme which is simple to implement and also maintains fair queuing among responsive and unresponsive flows. Simulation and analytical models and results are also presented to support the claims.

6. Reference
[1] R. Pan, B. Prabhakar and K. Psounis, “CHOKe: A stateless active queue management scheme for approximating fair bandwidth allocation”, IEEE Infocom 2000

Airline Maintenance

Here is a nice old joke I dug up from my funny mail forwards collection. I was searching for some old mails and saw this. Couldn’t stop laughing.

Qantas is an airline company based in Australia. After every flight, Qantas pilots fill out a form called a gripe sheet, which conveys to the mechanics problems encountered with the aircraft during the flight that need repair or correction. The engineers read and correct the problem, and then respond in writing on the lower half of the form what remedial action was taken, and the pilot reviews the gripe sheets before the next flight. Never let it be said that ground crews and engineers lack a sense of humor. Here are some actual logged maintenance complaints and problems as submitted by Qantas pilots and the solution recorded by maintenance engineers. By the way, Qantas is the only major airline that has never had an accident.

(P = the problem logged by the pilot)
(S = the solution and action taken by the engineers)

P: Left inside main tire almost needs replacement.
S: Almost replaced left inside main tire.

P: Test flight OK, except auto-land very rough.
S: Auto-land not installed on this aircraft.

P: Something loose in cockpit.
S: Something tightened in cockpit

P: Autopilot in altitude-hold mode produces a 200 feet per minute descent.
S: Cannot reproduce problem on ground.

P: Evidence of leak on right main landing gear.
S: Evidence removed.

P: DME volume unbelievably loud.
S: DME volume set to more believable level.

P: Friction locks cause throttle levers to stick.
S: That's what they're there for.

P: IFF inoperative.
S: IFF always inoperative in OFF mode.

P: Suspected crack in windshield.
S: Suspect you're right.

P: Number 3 engine missing.
S: Engine found on right wing after brief search.

P: Aircraft handles funny.
S: Aircraft warned to straighten up, fly right, and be serious.

P: Target radar hums.
S: Reprogrammed target radar with lyrics.

P: Mouse in cockpit.
S: Cat installed.

P: Noise coming from under instrument panel. Sounds like a midget pounding on something with a hammer.
S: Took hammer away from midget.

Finning with the fishes

It feels strange the first time. Your mask. Your awkward gear, a bit heavy. You ease into the water and your face slips below the surface, Inhale; the air comes with a reassuring hiss and for the first time, you breathe underwater. In moments you forget your mask. Your equipment transforms to light and agile and you’re free like you’ve never experienced before. With that first underwater breath, the door opens to a different world. And your life will never be the same again. You can see more different species in ten minutes there than in ten hours in the most unspoiled wilderness above water” – excerpt from PADI OPEN WATER DIVER manual intro.

I don’t think I can explain the way I felt when I first descended down to the ocean more accurately. It was on the second week of august that I went for my diving certification trip with gill divers to Tioman islands, Malaysia. When I enrolled for PADI certification, all I wanted was to get to know the sea and after my theory and pool session, I really was looking forward for the dive trip. The only downside was that, I didn’t have any friends to come with me. But, I made some very good friends during that trip and that weekend turned out to be one of the best till date in all aspects. When you dive, you enter a completely different world. There were people from all parts of the world with me for diving - US, Canada, Korea, Indonesia, France etc and everyone was really cheerful. After my first dive I promised myself that once I reach back Singapore, I am going to enroll for the advanced course, and yeah, I did. Officially, I am now a PADI certified open water diver.

As always, this is another photo blog and I believe pictures tell stories in more details than words.
We started our trip on Friday august 14th from Singapore by around 8pm. We crossed Malaysian border, had a nice and long dinner and set out for Mersing to catch our boat to Tioman. (Tioman is an island in Malaysia, one of the most beautiful ones, I will say) Usually we are supposed to be starting from there by 11pm, but that day, there was some problem with the tides and we could start from there only by 1:30am. Reached our resort in Tioman around 3 and fell asleep immediately.

The next day, I woke up to see a beautiful resort which overlooked the sea. But the weather was not that good, it was drizzling. We had our breakfast in the resort in nice cool weather. I didn’t want to go out though. Just wanted to stay there lazing around and enjoy the weather.
The resort we stayed is called the Island Reef Resort and it contains small cottages build around a hilly area.

Finally, we got on our boat and started towards the dive sites. Our instructor, Monica told us to streamline our equipments and get inside our wet suits. Since we were trained all these during the pool session 2 weeks back, it was relatively easy for me. Also I was fortunate enough to have the same buddy – Raline – from my pool session. She is a cool and funny person.

Briefing Session - That’s our instructor – she is one of the coolest teachers I ever had. She told what we were going to do and also the possible fishes and corals we may find there.

After the boat came to a stop, other dive master/instructors – Vijay, Johnny and Gray – went in the water to tie the buoy and rope for us to use for our first dive. Even though I had my underwater camera with me, I didn’t want to take it during my first dive. Also I hadn’t cleaned it properly and Monica showed me some hair strands in the O-ring of the casing.

We descended one by one and had to equalize frequently and I was a bit scared about equalization. But once I was down, it looked awesome. We were holding on to a rope and looking around in amazement. Since it was our first dive, we were in a reasonably deserted place. But there was a small anemone and a couple of clown fishes were there. Also there were some sea cucumbers in the bottom and some corals. A variety of fishes were coming and going from all sides and I was not sure what to do there. After everyone was down and we familiarized with the environment, we demonstrated a couple of skills and by that time our air were running out. We went back on deck.
Even if there was not much of moving around, we all thoroughly enjoyed our first dive. We had our lunch in the boat itself while our gas tanks were refilled.

Since I loved being in water and also wanted to try my underwater camera, I simply jumped to water and took some random snaps. Someone was feeding the fishes.
The next 2 dives were the most awesome ones. We finned along corals and rocks, up and down, through schools of colorful fishes and I cursed myself for not taking the camera. By around 5, we were all tired and we back on boat and set our journey back to the main island.

Tioman Island, Malaysia

The beautiful Sunset from the dock. We all became friends by evening and we were happily chattering about all that we have seen on our first day. Before we got to our resort, we stopped at a nearby shop to eat and they made tasty food.
After that the leisure divers who were going for the night dive, left and me and my other open water diver friends left to our cabins and took a bath. Then we came down for the barbeque dinner. By that time the leisure divers were back.

We came down to the beach by 9pm and got ourselves a couple of beers and some snacks and talked for around 2 hours about the first day. The seasoned divers shared their experiences.

The first thing I did next day was to clean up my camera properly with the help of Monica and made sure I am not going to miss anything this time I dive. Thanks to Johnny for taking this shot.
That’s Monica, our instructor. I wonder how she manages to control her buoyancy that well.

That’s a Bridled monocle bream. I had to chase this guy for a bit to get this shot.
I spend some time studying the fish charts after my first 2 dives as I didn’t know any of them. With the help of Monica, I managed to remember the most common fishes. Still I have not find out the names of couple of them.

That’s Raline – my buddy. She was funny, all the time making funny faces when I tried clicking a snap. She was trying to smile or show me something when I was clicking this snap. According to Monica, we both made a good buddy pair. Since I was consuming air fast, she had to check my air regularly.
This little guy was furious at me when I was trying to take this snap as I was interfering with his home. I got lots of shots of clown fish; even one brave clown fish came out of his anemone and danced in front of my camera. When I change the camera direction, he stayed in front of the camera without allowing me to focus on him. I guess he wanted me out of his domain.

A pack of sea urchins. The first day, I didn’t notice the blue color inside the spikes, which looks like their eyes.
A large table coral. According to Monica, this is around 70-100 years old. So we were very careful not to go near them, we didn’t want to destroy them as our buoyancy control was not that good.
That’s an eight banded butterfly fish. I saw all sorts of butterfly fish there.

We finned through rocks and narrow paths

Even through schools of fishes

That’s Astri, I guess she spotted something in the coral. She was also helping me with the photos, whenever she saw something interesting, she called me.

That’s Morgan and Laetitia from France

That’s Raline again, trying to hug a coral.

And that’s me again, thank you Johnny…

Check this out, a car wreck in one of the dive sites. It was a change; you expect some ship wrecks and see a car wreck instead.

That’s Johnny, our dive master and he was the one who kept track of me when I was wandering off to take pictures of everything I saw. Also he helped in controlling my air consumption.

Time to come up!

Took a snap of the dive comp when I was doing my safety stop.

Up up, there you go!

Our boat coming to pick us out!

The diving team! Uh! I miss them already.

That’s Vijay with his summersault from the upper deck to water. We all jumped in to the sea when we were waiting for our air to be refilled. We had all the fun in the water.

We even took some photos under water. That’s Monica and Raline, I am not sure whether they are trying to smile or scream or threaten me there, ha ha.

Finally, after our five dives, we had to pack up and get ready to come back to Singapore.
I don’t know about others, but my mind was stuck in there with the island of Tioman and the underwater world. It was more like a dream, swimming with the fishes and touching the corals with my own hands. (I am pretty sure it’s the same way everyone else felt). Anyway, by 2:00pm, we started our journey back to mainland of Malaysia. During our journey, we filled out our dive log books and I spend some time matching the unknown fishes in my camera with the ones in the books. Then I went out and simply sat on the side of the boat, with my legs touching the waves and enjoying the moments. After we reached Mersing, we took our bus back to Singapore and we reached back around 8pm.
There are still a lot of things for me to learn and practice especially buoyancy control, breath control, proper equalization etc. It was an incredible experience and something that I can cherish for a long long time. I am looking forward for my dive trip for PADI Advanced Diver course soon. Thanks to all my friends for giving me such a good time. Hope we can all dive together soon.

Over Enjoyment!

Usually when I don’t write blogs for long time, it means, either there are not many happenings in my life to write about or I am having so many things happening that I hardly get enough time or mood to even think about writing. The latter seems to be the reason for last couple of months. Even those blogs I managed to write was more of photos and less of content. The reason being, I was determined to enjoy my vacation to the fullest. And I did it.
Looking back, I can easily say I just had the best vacations ever and I don’t have track of the things I did. By the time I was back from India, I promised myself that, no matter what I do, I’ll write all about it. I somehow managed to do it for one or 2 things. Every time I do something new, I think about blogging. But then again, I managed to microblog (twitter) some of them I guess. And I really wonder now whether I have lost the grip of writing.
I am not that sure why I am writing this blog now. May be as a desperate attempt to get back in the track of writing or like I read in one of the blogs, it’ll be fun to read about this vacation after 10years or so.
Ok here comes the list,
Places we changed upside down - Kuala Lumpur, Malaysia
In Singapore (The ones I remember) - Singapore Zoo, Science Centre, Labrador Park, Sentosa, Chinese Garden (which used to be in the back yard of the place where I stayed last time), Clarke Quay, Clarke Quay, Clarke Quay…
Bottles we finished! (Outings & Parties) - numerous, I have no idea about how many, on an average, 2 - 3 parties per week.
Others - PADI open water Scuba Diving Certification. Sea diving at Tioman, Malaysia next week, Marathon 2 weeks from now.
Movies I watched in Silver screen (The ones I remember)
Angels & Daemons - Great one, loved it
The Taking of Pelham 123 - Good One
Transformers - Crappy
Harry Potter and the Half-Blood Prince - I liked the previous one better
Ice Age 3D - loved 3D, but not the movie
Luck - I thought this was the worst movie until I watched…
Love Aaj Kal - Great Movie if you want to waste your money, time and peace of mind
Hangover - Excellent, the best part is, we went for this movie after a party, really drunk and I want to watch that movie one more time
UP (3D) - Awesome movie in terms of both the story and the 3D, loved that one
Paintings - The Lake House
Games - Tomb Raider Underworld, Crysis Warhead
Books - Around 5 I think, now reading Harry Potter series, again
And many other things which I don’t remember now…
Above all, I made many new friends.
Finally, the vacation’s over. New semester is starting from today. At this point, I feel drained of all the energy, exhausted from over enjoyment, but with the satisfaction of having the best vacation, ever. I used to wonder whether I’ll even get tired of overdoing the things I love. Guess I got the answer. Tired to the end that I am promising myself that there won’t be any more parties and outings, (atleast for a month). I wish I get to ‘execute laziness’ like I did some time back and get back my writing ‘grip’ so that I can be back to my regular blogging and blog about atleast some of the items in the list above. Hopefully I will, let see!

A day with the Animals

Singapore Zoo, Bird Park and Night Safari were the places I wanted to visit first, after getting my SLR. The animals and birds would make some excellent subjects for my photographic experiments. I got that chance when my friend took a package (for all the 3 places) ticket for 2 - he and his cousin - and could visit only 2 places. So, I set out for one of my first photographic expeditions with my Canon EOS 450D.
We started by collecting the map from the information counter. There were colorful parrots to invite us at the entry point.

The next was the beavers. They were really cute. They looked at the visitors and made noises all the time. I guess they were looking for food.

A field full of flemingos. There was no cage or no restrictions, they were free ranging ones. They could fly off whenever they want to, but I think they hardly did.

“See what I am writing”
Orang utans are one of the primary attractions of the Singapore zoo. Most of them are free ranging ones. By the time we visited them, they were enjoying the afternoon nap after their lunch. This guy here was concentrated in picking something from inside that iron pole. First I thought he (or she?) was writing something.

“Do not Disturb!”

“Say Cheeeeeeeeeeeeeesssssseeeeeeeee!”

“I don’t like you, I am going”.
(Check out closely, can you identify whether he is hanging upside down or straight?)

“Where is my mom?”
(This young chap was trying to catch up with his mom, it was fun to watch him jumping and running around to catch up with his mom)

“Don’t worry son, I am here, lemme be a model for this snap!”

Then came our first feeding session, the polar bear - Inuka (means silent hunter in Eskimo language). There were 2 polar bears there, Inuka and his mother Sheba.

We started at around 11:30 which is the feeding time for most of the animals. In the information brochure, they had marked the times and that’s the time when they will be the most active. They had organized the feedings in such a way that, if we plan a bit, we could cover all of the feedings one by one. Believe me, the zoo keepers are really serious about their animals’ wellbeing.

“I am getting ready for my meal”.
When we made our first pass, before the feeding time, I felt they are quiet animals, simply lazing around in their air-conditioned caves. But the moment the food started coming in, Inuka turned out to be more active than a kid with his favorite toy. He jumped in to the water and splashed the water all over. What more to say, he IS a messy eater as the narrator put it. He even chased a live fish in the tank and ate it.

There are so many facts we don’t know about the polar bears which they narrated. Their fur is not white, but clear, it’s the light reflection that makes it look white and their skin color is black. Their milk contains 46% fat which helps their young ones to stay warm in the ice and so on.
I couldn’t get good pictures because I was in the back of the crowd.

After Inuka’s feeding session, it was time for our feeding session. We went to the nearby hotel and there we saw a wedding. They allow wedding ceremonies, other functions, corporate parties etc to be conducted in the zoo and arrange the animals to be near you. These newly wedded couples were taking pictures near the elephant.
Since we didn’t get a close look at the feeding of the polar bears, we went to the white tiger feeding by 2pm even when the actual feeding was at 2:20pm. I got a good spot in the front of the crowd. That gave me more than enough time to play with my SLR. Also, the tigers were getting really hungry it seemed and they were restless and running around the whole place. There were 3 of them.
“I am tired of waiting for my food, where is the foood?”

“What are you looking at?”
I guess the tigers were annoyed by the crowd that they sometimes stared at us. Also whenever they see someone who they think is their trainer with food, they came near the crowd in a hurry.

“Here I go!”
They caught their food in mid air when the trainer threw the food. Sometimes the trainer threw the food to the water and the tigers knew exactly where it’s going to hit.

“Finally, I got my food, I am happy”
This is the place I enjoyed the most in all aspects. I could take all the snaps I wanted and I spent lot of time enjoying the big cats’ activities, first being restless and then enjoying their food. Cats are my favorite species of animals. I simply love their company.

“Ladies and gentleman, meet Carlos, the naughty sea lion”, the narrator started during the Animal show and there came a big black sea lion and he stood steady in his paws first. He is a very well trained Sea Lion. Also he is naughty, funny and splashes water all over the place.

He even talks to pelicans

And see this, he can leap high up the water and get the ball. He swims very fast, he claps along with the audience.

He even kisses you on your cheek

After the show, when we came out, there was this colorful bird, waiting for my camera.

Here is another beautiful bird with a crown on his head. I got this shot while I was on the tram and so I couldn’t catch its name. I guess this one is from Africa.

Then we visited the fragile forest. There is a giant dome inside which many animals, birds, butterflies even bats freely roamed around. It felt like a real journey through the woods.

I was fortunate enough to capture a battle between an unknown rat like animal and a big chameleon. The brown animal wanted to cross the branch towards the right side of the tree and the chameleon wanted to go the other way. As soon as the crowd noticed this and came near them, they stopped their fights and went back to their own ways.

There we are, Charles and me, inside the tropical rainforest.

On our way back, we just passed through the lion’s place. This lady was up after her nap.

By this time, it was almost 5pm and we were very tired since it started as a hot day and by the end of it, it started raining. But we were nowhere near covering the entire zoo. I think we covered around 20-40% only. We couldn’t continue as we were tired and my camera was full with photos and its battery, almost drained. So we decided to stop for the day and promised ourselves that we will come again to continue our expedition to the animal world. All in all, Singapore zoo exceeded all my expectations and in my opinion, it kept the reputation as one of the best zoos in the worlds.

p.s. There are more photos, its just that I cannot put all of them here.